要求:首先设计一个人员类person作为基类,其数据成员为姓名和身份证号,成员函数有输入数据和显示数据,再设计一个学生地址类address,包括数据成员地址和年龄,成员函数有输入数据和显示数据;生成person的派生类学生student,student包括数据成员电话号码和C++成绩,成员函数有输入数据和显示数据;设计学生成绩类score,它是student类和add类的派生类,继承两个类的所有属性,score类本身有数据成员数学成绩和英语成绩,成员函数有输入数据和显示数据;职员类employee继承person类,类中没有任何成员。编写主程序观察运行结果。
#include<iostream>
#include<string>
using namespace std;
class person
{
string name;
int id;
public:
set_person()
{
cout<<"请输入姓名:"<<endl;
cin>>name;
cout<<"请输入身份证号:"<<endl;
cin>>id;
}
print_person()
{
cout<<"姓名/t"<<"身份证号"<<endl;
cout<<name<<"/t"<<id<<endl;
}
};
class address
{
string ad;
int age;
public:
set_address()
{
cout<<"请输入家庭地址:"<<endl;
cin>>ad;
cout<<"请输入年龄:"<<endl;
cin>>age;
}
print_address()
{
cout<<"家庭地址/t"<<"年龄"<<endl;
cout<<ad<<"/t"<<age<<endl;
}
};
class student:public person
{
string tel;
int c_score;
public:
set_student()
{
set_person();
cout<<"请输入电话号码:"<<endl;
cin>>tel;
cout<<"请输入C++成绩:"<<endl;
cin>>c_score;
}
print_student()
{
print_person();
cout<<"电话号码/t"<<"C++成绩"<<endl;
cout<<tel<<"/t"<<c_score<<endl;
}
};
class score:public student,public address
{
int math_score,en_score;
public:
set_score()
{
set_student();
set_address();
cout<<"请输入数学成绩:"<<endl;
cin>>math_score;
cout<<"请输入英语成绩:"<<endl;
cin>>en_score;
}
print_score()
{
print_student();
print_address();
cout<<"数学/t"<<"英语"<<endl;
cout<<math_score<<"/t"<<en_score<<endl;
}
};
class employee:public person
{
;
};
main()
{
score s;
employee e;
s.set_score();
s.print_score();
e.set_person();
e.print_person();
}