/*
*Corpyright (c)2013,烟台大学计算机学院
*All right reseved.
*作者:王雅萍
*完成日期:2014年5月13日
*版本号:v1.0
*输入描述:
*问题描述:分别定义Teacher(教师)类和Cadre(干部)类
*程序输出:
*问题分析:采用多重继承方式由这两个类派生出新类Teacher_Cadre(教师兼干部)
*算法设计:
*/
#include <iostream>
using namespace std;
class Teacher
{
public:
Teacher(string a,int b,int sex1,string addr1,long long int phone1,string title1):name(a),age(b),sex(sex1),addr(addr1),phone(phone1),title(title1){}
void display();
protected:
string name,addr,title;
int age,sex;//sex为0为女,否则为男!
long long int phone;
};
void Teacher::display()
{
string g;
if(sex==0)
g="女";
else
g="男";
cout<<"姓名: "<<name<<endl;
cout<<"年龄: "<<age<<endl;
cout<<"性别: "<<g<<endl;
cout<<"地址: "<<addr<<endl;
cout<<"职称: "<<title<<endl;
cout<<"电话: "<<phone<<endl;
}
class Cadre
{
public:
Cadre(string a,int b,int sex1,string addr1,long long int phone1,string post1):name(a),age(b),sex(sex1),addr(addr1),phone(phone1),post(post1){}
void display();
protected:
string name,addr,post;
int age,sex;//sex为0为女,否则为男!
long long int phone;
};
void Cadre::display()
{
string g;
if(sex==0)
g="女";
else
g="男";
cout<<"姓名: "<<name<<endl;
cout<<"年龄: "<<age<<endl;
cout<<"性别: "<<g<<endl;
cout<<"地址: "<<addr<<endl;
cout<<"职务: "<<post<<endl;
cout<<"电话: "<<phone<<endl;
}
class Teacher_Cadre:public Teacher,public Cadre
{
public:
Teacher_Cadre(string a,int b,int sex1,string addr1,long long int phone1,string title1,string post1,int wage):
Teacher(a,b,sex1,addr1,phone1,title1),Cadre(a,b,sex1,addr1,phone1,post1),wages(wage){}
void show();
private:
int wages;
};
void Teacher_Cadre::show()
{
Teacher::display();
cout<<"职务: "<<post<<endl;
cout<<"工资: "<<wages<<endl;
}
int main()
{
Teacher_Cadre s("贺利坚",42,1,"烟台市莱山区某某小区88号",13963885401,"博士,副教授","CSDN博客红人",8000);
s.show();
return 0;
}
第十二周
最新推荐文章于 2020-06-12 16:56:05 发布