对象间的组成关系

要求:首先设计一个人员类person作为基类,其数据成员为姓名和身份证号,成员函数有输入数据和显示数据,再设计一个学生地址类address,包括数据成员地址和年龄,成员函数有输入数据和显示数据;生成person的派生类学生studentstudent包括数据成员电话号码和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();
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值