定义一个基类有姓名、性别、年龄,再由基类派生出教师类和学生类,教师类增加工号、职称和工资,学生类增加学号、班级、专业和入学成绩。

来源:互联网 发布:excel统计多列数据 编辑:程序博客网 时间:2024/04/30 07:22
 

#include<iostream.h>

#include<string.h>

class person

{

public:

 person (char *a,char *b,int s)

 {

  name=a;

  sex=b;

  score=s;

 }

 void display()

 {

  cout<<"姓名:"<<name<<endl;

  cout<<"性别:"<<sex<<endl;

  cout<<"年龄:"<<score<<endl;

 

 }

private:

 char *name ;

 char *sex ;

 int score;

};

class student:public person

{

public:

 student(char *a,char *b,int s,char *c,float s1):person(a,b,s)

 {

  cla=c;

  score=s1;

 }

 void display1()

 {

  cout<<"学生:"<<endl;

   display();

  cout<<"班级:"<<cla<<endl;

  cout<<"成绩:"<<score<<endl;

  cout<<endl;

 }

private:

 char *cla ;

 float score;

};

class teacher: public person

{

public:

 teacher(char *a,char *b,int s,char *p,int n,int sa):person(a,b,s)

 {

 

  post=p;

  num=n;

  salary=sa;

 }

 void display2()

 {

  cout<<"教师:"<<endl;

  display();

  cout<<"工号:"<<num<<endl;

  cout<<"职称:"<<post<<endl;

  cout<<"工资:"<<salary<<endl;

  cout<<endl;

 }

private: char *post ;

   int num;

   int salary;

};

 

void main()

{

 teacher g1("李昂","男",20, "教师",1001,3000);  

 g1.display2();

 student s1("李昂","男",20,"软件13",86);

 s1.display1 ();

}