第五章

来源:互联网 发布:防骗大数据 编辑:程序博客网 时间:2024/05/01 22:33
//第一题:#include <iostream>using namespace std;class Student{public:  void get_value()   {cin>>num>>name>>sex;}  void display( )    {cout<<"num: "<<num<<endl;     cout<<"name: "<<name<<endl;     cout<<"sex: "<<sex<<endl;} private :   int num;   char name[10];   char sex;};   class Student1: public Student {public:   void get_value_1()    {get_value();     cin>>age>>addr;}   void display_1()   {   cout<<"age: "<<age<<endl;                cout<<"address: "<<addr<<endl;}      private:       int age;       char addr[30]; };int  main(){Student1 stud1;  stud1.get_value_1();  stud1.display();  stud1.display_1();  return 0;}

//第二题#include <iostream>using namespace std;class Student{public:  void get_value()   {cin>>num>>name>>sex;}  void display( )    {cout<<"num: "<<num<<endl;     cout<<"name: "<<name<<endl;     cout<<"sex: "<<sex<<endl;} private :   int num;   char name[10];   char sex;};   class Student1: private Student {public:   void get_value_1()    {get_value();     cin>>age>>addr;}   void display_1()       {display();       cout<<"age: "<<age<<endl;              cout<<"address: "<<addr<<endl;}      private:       int age;    char addr[30]; };int main() {Student1 stud1;  stud1.get_value_1();  stud1.display_1();  return 0;}

//第三章:#include <iostream>using namespace std;class Student                        //声明基类{public:                             //基类公用成员  void get_value();  void display( ); protected :                         //基类保护成员    int num;    char name[10];    char sex;};void Student::get_value() {cin>>num>>name>>sex;}void Student::display( ) {cout<<"num: "<<num<<endl;  cout<<"name: "<<name<<endl;  cout<<"sex: "<<sex<<endl; }class Student1: protected Student              //声明一个保护派生类{public:   void get_value_1();   void display1( );private:   int age;                             char addr[30];};void Student1::get_value_1() {get_value();  cin>>age>>addr; }void Student1::display1( )   {cout<<"num: "<<num<<endl;         //引用基类的保护成员   cout<<"name: "<<name<<endl;       //引用基类的保护成员   cout<<"sex: "<<sex<<endl;         //引用基类的保护成员   cout<<"age: "<<age<<endl;         //引用派生类的私有成员   cout<<"address: "<<addr<<endl;    //引用派生类的私有成员  }int main( ) {Student1 stud1;                      //stud1是派生类student1类的对象  stud1.get_value_1();                 //调用派生类对象stud1的公用成员函数  stud1.display1( );                   //调用派生类对象stud1的公用成员函数  return 0; }

//第四题:#include <iostream>using namespace std;class Student//声明基类{public:                             //基类公用成员  void get_value();  void display( ); protected :                         //基类保护成员    int num;    char name[10];    char sex;};void Student::get_value() {cin>>num>>name>>sex;}void Student::display( ) {cout<<"num: "<<num<<endl;  cout<<"name: "<<name<<endl;  cout<<"sex: "<<sex<<endl; }class Student1: public Student              //声明一个公用派生类{public:   void get_value_1();   void display1( ); private:   int age;                             char addr[30];};void Student1::get_value_1() {get_value();  cin>>age>>addr; }void Student1::display1( )  {cout<<"num: "<<num<<endl;     //引用基类的保护成员,合法   cout<<"name: "<<name<<endl;       //引用基类的保护成员,合法   cout<<"sex: "<<sex<<endl;         //引用基类的保护成员,合法   cout<<"age: "<<age<<endl;         //引用派生类的私有成员,合法   cout<<"address: "<<addr<<endl;    //引用派生类的私有成员,合法  }int main( ) {Student1 stud1;                      //stud1是派生类student1类的对象  stud1.get_value_1();                 //调用派生类对象stud1的公用成员函数get_value_1  stud1.display1( );                   //调用派生类对象stud1的公用成员函数display1  return 0; }

//第九题:#include<string>#include <iostream>using namespace std;class Teacher {public:   Teacher(string nam,int a,char s,string tit,string ad,string t);   void display();  protected:    string name;    int age;    char sex;    string title;    string addr;    string tel;};Teacher::Teacher(string nam,int a,char s,string tit,string ad,string t):     name(nam),age(a),sex(s),title(tit),addr(ad),tel(t){ }void Teacher::display()     {cout<<"name:"<<name<<endl;      cout<<"age"<<age<<endl;      cout<<"sex:"<<sex<<endl;      cout<<"title:"<<title<<endl;      cout<<"address:"<<addr<<endl;      cout<<"tel:"<<tel<<endl;      }class Cadre {public:Cadre(string nam,int a,char s,string p,string ad,string t);   void display();  protected:   string name;   int age;   char sex;   string post;   string addr;   string tel; };Cadre::Cadre(string nam,int a,char s,string p,string ad,string t):     name(nam),age(a),sex(s),post(p),addr(ad),tel(t){}void Cadre::display()    {cout<<"name:"<<name<<endl;     cout<<"age:"<<age<<endl;     cout<<"sex:"<<sex<<endl;     cout<<"post:"<<post<<endl;     cout<<"address:"<<addr<<endl;     cout<<"tel:"<<tel<<endl;    }class Teacher_Cadre:public Teacher,public Cadre {public:   Teacher_Cadre(string nam,int a,char s,string tit,string p,string ad,string t,float w);   void show( );  private:    float wage; };Teacher_Cadre::Teacher_Cadre(string nam,int a,char s,string t,string p,string ad,string tel,float w):  Teacher(nam,a,s,t,ad,tel),Cadre(nam,a,s,p,ad,tel),wage(w) {}void Teacher_Cadre::show( )    {Teacher::display();     cout<<"post:"<<Cadre::post<<endl;     cout<<"wages:"<<wage<<endl;     }int main( ) {Teacher_Cadre te_ca("elisa",22,'w',"prof.","English","mailucaida","(021)61234567",4500);  te_ca.show( );  return 0;}

//第十题:#include <iostream>#include <cstring>using namespace std;class Teacher                                //声明教师类 {public:  Teacher(int,char [],char);               //声明构造函数    void display();                          //声明输出函数  private:   int num;   char name[20];   char sex;  };Teacher::Teacher(int n,char nam[],char s)    //定义构造函数 {num=n;  strcpy(name,nam);  sex=s;}void Teacher::display()                      //定义输出函数 {cout<<"num:"<<num<<endl;  cout<<"name:"<<name<<endl;  cout<<"sex:"<<sex<<endl;}class BirthDate                               //声明生日类 {public:    BirthDate(int,int,int);                   //声明构造函数    void display();                           //声明输出函数    void change(int,int,int);                 //声明修改函数  private:    int year;    int month;    int day;};BirthDate::BirthDate(int y,int m,int d)       //定义构造函数 {year=y;  month=m;  day=d; }void BirthDate::display()                     //定义输出函数 {cout<<"birthday:"<<month<<"/"<<day<<"/"<<year<<endl;}void BirthDate::change(int y,int m,int d)     //定义修改函数 {year=y;  month=m;  day=d; }class Professor:public Teacher                         //声明教授类 {public:    Professor(int,char [],char,int,int,int,float);    //声明构造函数    void display();                                   //声明输出函数    void change(int,int,int);                         //声明修改函数   private:    float area;    BirthDate birthday;                               //定义BirthDate类的对象作为数据成员 };Professor::Professor(int n,char nam[20],char s,int y,int m,int d,float a): Teacher(n,nam,s),birthday(y,m,d),area(a){ }          //定义构造函数void Professor::display()                             //定义输出函数{Teacher::display(); birthday.display(); cout<<"area:"<<area<<endl;}void Professor::change(int y,int m,int d)             //定义修改函数 {birthday.change(y,m,d); }int main(){Professor prof1(14379,"Xueli",'w',1990,10,1,125.4);   //定义Professor对象prof1 cout<<endl<<"original data:"<<endl; prof1.display();                                     //调用prof1对象的display函数 cout<<endl<<"new data:"<<endl; prof1.change(1987,12,10);                              //调用prof1对象的change函数 prof1.display();                                     //调用prof1对象的display函数 return 0;}



0 0
原创粉丝点击