【问题描述】定义一个教师类(Teacher),包含数据成员:编号id、姓名name、性别sex和工资pay;定义一个学生类(Student),包含数据成员:编号id、姓名name、性别sex和成绩score。请根据主程序完成两个类的实现,并把一个学生对象转换为老师对象,只将以上三个相同的数据成员移植过去。
主函数代码如下:
int main()
{
Teacher teacher1(10001,"Li",'f',1234.5),teacher2;
Student student1(20010,"Wang",'m',89.5);
cout<<"student1:"<<endl;
student1.display();
teacher2=Teacher(student1);
cout<<"teacher2:"<<endl;
teacher2.display();
return 0;
}
【输入说明】无输入
【输出样例】
student1:
num:20010
name:Wang
sex:m
score:89.5
teacher2:
num:20010
name:Wang
sex:m
pay:1500
#include <iostream>
using namespace std;
class Student{
private:
int id;
string name;
char sex;
int score;
public:
int getid()
{
return id;
}
string getname()
{
return name;
}
char getsex()
{
return sex;
}
void display()
{
cout<<"num:"<<id<<endl;
cout<<"name:"<<name<<endl;
cout<<"sex:"<<sex<<endl;
cout<<"score:"<<score<<endl;
cout<<endl;
}
Student(int ,string ,char ,double );
};
Student::Student(int i,string n,char s,double sc)
{
id=i;
name=n;
sex=s;
score=sc;
}
class Teacher{
private:
int id;
string name;
char sex;
double pay;
public:
Teacher();
Teacher(Student &a);
Teacher(int ,string ,char ,double );
void display(){
cout<<"num:"<<id<<endl;
cout<<"name:"<<name<<endl;
cout<<"sex:"<<sex<<endl;
cout<<"pay:"<<pay<<endl;
}
};
Teacher::Teacher() {
}
Teacher::Teacher(int i ,string n ,char s ,double p )
{
id=i;
name=n;
sex=s;
pay=p;
}
Teacher::Teacher(Student &a)
{
id=a.getid();
name=a.getname();
sex=a.getsex();
pay=5000;
}
int main()
{
Teacher teacher1(10001,"Li",'f',1234.5),teacher2;
Student student1(20010,"Wang",'m',89.5);
cout<<"student1:"<<endl;
student1.display();
teacher2=Teacher(student1);
cout<<"teacher2:"<<endl;
teacher2.display();
return 0;
}