C++实验2—作业

来源:互联网 发布:淘宝手机端详情页gif 编辑:程序博客网 时间:2024/05/22 07:08

第一题:

#include <iostream>using namespace std;class Time{public:    void set_time();    void show_time();    void add_a_hours(int);    void add_a_minutes(int);    void add_a_seconds(int);private:    bool is_time(int,int,int);    int hour;    int minute;    int sec;};void Time::set_time(){    char c1,c2;    cout<<"请输入时间(格式hh:mm:ss)";    while(1)    {        cin>>hour>>c1>>minute>>c2>>sec;        if(c1!=':'||c2!=':')            cout<<"格式不正确,请重新输入"<<endl;        else if(!is_time(hour,minute,sec))            cout<<"时间非法,请重新输入"<<endl;        else            break;    }}void Time::show_time(){    cout<<hour<<":"<<minute<<":"<<sec<<endl;}bool Time::is_time(int h,int m,int s){    if (h<0||h>24||m<0||m>60||s<0||s>60)        return false;    return true;}void Time::add_a_seconds(int s){    int n;    sec+=s;    if(sec>=60)    {        n=sec/60;        sec%=60;        Time::add_a_minutes(n);    }}void Time::add_a_minutes(int m){    int n;    minute+=m;    if(minute>=60)    {        n=minute/60;        minute=minute%60;        Time::add_a_hours(n);    }}void Time::add_a_hours(int h){    hour+=h;     if(hour>=24)     {         hour%=24;     }}int main(){    int tSecond,tMinute,tHour;    Time t1;    t1.set_time();    t1.show_time();    cout<<"调整时间,输入增加的量ss,mm,hh"<<endl;    cin>>tSecond>>tMinute>>tHour;    t1.add_a_seconds(tSecond);    t1.add_a_minutes(tMinute);    t1.add_a_hours(tHour);    t1.show_time();    return 0;}
第三题:

#include <iostream>#include<cstring>using namespace std;class Book{private:    char name[50];    char writer[50];    char public_name[50];    float price;    int number;    int NO;public:    void setBook(char *n,char *w,char *pu,float pr,int nu,int N);    void borrow();    void restore();    void print();    void set_NO(int N);    int get_NO();};void Book::setBook(char *n,char *w,char *pu,float pr,int nu,int N){    strcpy(name,n);    strcpy(writer,w);    strcpy(public_name,pu);    price=pr;    number=nu;    NO=N;}void Book::borrow(){    cout<<number--;}void Book::restore(){    cout<<number++;}void Book::print(){    cout<<"书名:"<<name<<endl;    cout<<"作者:"<<writer<<endl;    cout<<"出版社:"<<public_name<<endl;    cout<<"价格:"<<price<<endl;    cout<<"数量:"<<number<<endl;    cout<<"书号:"<< NO<<endl;    cout<<endl;}void Book::set_NO(int N ){    NO=N;}int Book::get_NO(){    cout<<"新书号:";    return NO;}int main(){    Book b;    b.setBook("jiewo","yuqiuyu","weifang",25,5,2014);    b.print();    b.borrow();    b.print();    b.restore();    b.print();    b.set_NO(2015);    b.print();    cout<<b.get_NO();    return 0;}

第四题:

#include<iostream>  #include <string>  using namespace std;    class Stu    {    public:      string getName();      int average();      void setStudent(string n,float c,float m1);      void setName(string m);      void show();  private:       string name;    //学生姓名        float chinese;  //语文成绩        float math;     //数学成绩        //接下去写    };   string Stu::getName()  {      return name;  }  int Stu::average()  {      return ((chinese+math)/2);  }  void Stu::setStudent(string n,float c,float m1)  {      name=n;      chinese=c;      math=m1;  }  void Stu::setName(string m)  {      name=m;  }  void Stu::show()  {      cout<<"Name:"<<name<<endl;      cout<<"Score:"<<chinese<<"  "<<math<<endl;      cout<<"average:"<<(chinese+math)/2<<"  "<<"Sum:"<<chinese+math<<endl<<endl;  }              int main()    {        Stu s1,s2;        s1.setStudent("Lin daiyu", 98, 96); //对象置初值        s2.setStudent("Jia baoyu", 90, 88); //对象置初值        s1.show();//打印信息        s2.show();//打印信息        s1.setName("xue baochai");//重新置p1对象的名字        s1.show();        cout<<"s1.Name: "<<s1.getName()<<endl;//打印对象的名字        cout<<"s1.average: "<<s1.average()<<endl;//打印对象的成绩        return 0;    }   
第五题:

#include <iostream>  using namespace std; class CFraction  {  private:      int nume;      int deno;    public:      CFraction(int nu,int de);       void set(int nu=0,int de=1);         void input();                     void simplify();   void amplify(int n);void output(int style=0);};CFraction::CFraction(int nu,int de) {nume=nu;deno=de;}void CFraction::set(int nu,int de){nume=nu;deno=de;}void CFraction::input(){cout<<nume<<"/"<<deno<<"化简后为:";}void CFraction::simplify(){for(int i=2;i<=nume;i++){if(nume%i==0&&deno%i==0){nume/=i;deno/=i;i--;}else cout<<"";}cout<<nume<<"/"<<deno<<endl;}void CFraction::amplify(int n){nume*=n;cout<<"变化和"<<nume<<"/"<<deno<<endl;}void CFraction::output(int style){while(style==1){cout<<nume<<"/"<<deno<<"化简"<<nume<<"/"<<deno<<endl;break;}while(style==2){cout<<nume<<"/"<<deno<<"化简"<<nume/deno<<"("<<nume%deno<<"/"<<deno<<")"<<endl;break;}while(style==3){double n=nume,d=deno;cout<<nume<<"/"<<deno<<"化简"<<n/d<<endl;break;}}void main(){CFraction n(0,0);n.set(6,8);n.input();n.simplify();n.set(2,3);n.amplify(5);n.set(4,3);n.output(1);n.output(2);n.output(3);}




0 0
原创粉丝点击