在职研究生(多重继承)

时间限制: 1 Sec  内存限制: 128 MB
提交: 591  解决: 264
[提交][状态][讨论版]

题目描述

1、建立如下的类继承结构:

1)        定义一个人员类CPeople,其属性(保护类型)有:姓名、性别、年龄;

2)        从CPeople类派生出学生类CStudent,添加属性:学号和入学成绩;

3)        从CPeople类再派生出教师类CTeacher,添加属性:职务、部门;

4)        从CStudent和CTeacher类共同派生出在职研究生类CGradOnWork,添加属性:研究方向、导师;

2、分别定义以上类的构造函数、输出函数print及其他函数(如需要)。

3、在主函数中定义各种类的对象,并测试之。

输入

第一行:姓名性别年龄
第二行:学号成绩
第三行:职务部门
第四行:研究方向导师

输出

第一行:People:
第二行及以后各行:格式见Sample

样例输入

wang-li m 23
2012100365 92.5
assistant computer
robot zhao-jun

样例输出

People:
Name: wang-li
Sex: m
Age: 23
Student:
Name: wang-li
Sex: m
Age: 23
No.: 2012100365
Score: 92.5
Teacher:
Name: wang-li
Sex: m
Age: 23
Position: assistant
Department: computer
GradOnWork:
Name: wang-li
Sex: m
Age: 23
No.: 2012100365
Score: 92.5
Position: assistant
Department: computer
Direction: robot
Tutor: zhao-jun
#include <iostream>
#include <string>
#include <cstring>using namespace std;class CPeople
{
protected:string name;char sex;int age;
public:CPeople(){}CPeople(string n,char s,int a):name(n),sex(s),age(a){}void print(){cout <<"People:"<<endl;printP();cout <<endl;}void printP(){cout <<"Name: "<< name <<endl<<"Sex: "<< sex <<endl<<"Age: "<<age<<endl;}
};class CStudent : public virtual CPeople
{
protected:char no[11];float score;
public:CStudent(){}CStudent(CPeople p,char*n,float s):CPeople(p),score(s){strcpy(no,n);}void print(){cout <<"Student:"<<endl;printP();printS();cout <<endl;}void printS(){cout <<"No.: "<< no <<endl<<"Score: "<< score <<endl;}
};class CTeacher : public virtual CPeople
{
protected:char position[16],department[16];
public:CTeacher(){}CTeacher(CPeople p,char *po,char *d):CPeople(p){strcpy(position,po);strcpy(department,d);}void print(){cout <<"Teacher:"<<endl;printP();printT();cout <<endl;}void printT(){cout <<"Position: "<< position <<endl<<"Department: "<< department <<endl;}
};class CGradOnWork : public CStudent,public CTeacher
{char direction[16],tutor[16];
public:CGradOnWork(){}CGradOnWork(CPeople p,CStudent s,CTeacher t,char *d,char *tu):CPeople(p),CStudent(s),CTeacher(t){strcpy(direction,d);strcpy(tutor,tu);}void print(){cout <<"GradOnWork:"<<endl;printP();printS();printT();cout <<"Direction: "<< direction <<endl<<"Tutor: "<< tutor <<endl;}
};int main()
{string name;int age;float score;char sex,no[11],pos[16],dep[16],dir[16],tut[16];cin >> name >> sex >> age;CPeople people(name,sex,age);people.print();cin >> no >> score;CStudent student(people,no,score);student.print();cin >> pos >> dep;CTeacher teacher(people,pos,dep);teacher.print();cin >> dir >> tut;CGradOnWork grad(people,student,teacher,dir,tut);grad.print();return 0;
}

C++ | 在职研究生(多重继承)相关推荐

  1. 在职研究生(多重继承)

    目录 题目描述 思路分析 AC代码 题目描述 1.建立如下的类继承结构: 1)定义一个人员类CPeople,其属性(保护类型)有:姓名.性别.年龄: 2)从CPeople类派生出学生类CStudent ...

  2. 在职研究生(多重继承)Python

    目录 题目描述 思路分析 AC代码 题目描述 1.建立如下的类继承结构: 1)定义一个人员类CPeople,其属性(保护类型)有:姓名.性别.年龄: 2)从CPeople类派生出学生类CStudent ...

  3. 10-A. 在职研究生(多重继承)

    10-多继承 题目描述 1.建立如下的类继承结构: 定义一个人员类CPeople,其属性(保护类型)有:姓名.性别.年龄: 从CPeople类派生出学生类CStudent,添加属性:学号和入学成绩: ...

  4. 在职计算机答辩没有通过,在职研究生论文答辩没通过可以重新申请吗?

    论文答辩是在职研究生考试的学员,只有通过了论文答辩才能拿到硕士学位证书.但是一些学员在进行论文答辩的时候总会出现一些状况,致使论文答辩不能顺利通过.那么,在职研究生论文答辩没通过可以重新申请吗? 在职 ...

  5. 同等学力计算机综合难吗,报考2018年同等学力申硕计算机在职研究生毕业很困难吗...

    在2018年在职研究生同等学力申硕考试已经马上要开始了,对于此种考试很多的在职人员还是想参加的,其中毕业的问题是考生想要知道的,所以考生要问的问题是,报考2018年同等学力申硕计算机在职研究生毕业很困 ...

  6. 计算机技术在职研究生学校,计算机技术在职研究生招生2020

    2020年计算机技术在职研究生招生工作已经开始了,很多人已经开始着手报名,首先大家要了解招生人群和学校. 第一,计算机技术在职研究生招生人群 目前这一专业的招生人群比较多,包括计算机技术人才.计算机管 ...

  7. 计算机研究生上课时间自由吗,计算机在职研究生面授班主要的上课时间安排是怎样的呢...

    现如今,随着国家经济的高速发展,大部分在职人士感到难以适应职场激烈的竞争力,所以想以在职读研的方式进修深造.但这些人又不想因为学习而耽误日常工作,遂在咨询,计算机在职研究生面授班主要的上课时间安排是怎 ...

  8. 计算机在职英语,计算机在职研究生英语教学存在的不足

    专业英语的重点是培养学生在专业方面语言的应用能力.然而传统的课堂教学模式仍然以教师"教"为主,教师将绝大部分教学时间花在语法和课文的阅读分析上,与公共外语教学没有太大的区别,没有体 ...

  9. 哪些学校招计算机类在职研究生,2020计算机科学与技术在职研究生有哪些院校可以报考?...

    如今这个社会,人们开始运用工具去满足自己的一些需求.最显著的就是关于计算机方面,大家开始运用计算机去学习各种技能,运用各种软件去了解这个社会,所以也有好多的在职人员选择了报考计算机方面的在职研究生,提 ...

最新文章

  1. python好学吗1001python好学吗-怎样才能写出 Pythonic 的代码 #P1001#
  2. STM32的8种GPIO输入输出模式深入详解
  3. 用户选择屏幕搜索帮助的代码实现
  4. php报内存溢出,php为什么运行了一段时间后才报内存溢出?
  5. linux进入文件全文搜索命令,Linux 文件查找命令详解
  6. Springboot细节挖掘(对web的支持之数据校验)
  7. Windows设置程序 .bat 开机自启动
  8. 数据结构之二叉树_二叉排序树(严蔚敏C语言版)
  9. 一张图看懂什么是运维?
  10. 12月10日 - 最新一大波迅雷看看白金迅雷钻石·VIP7的会员帐号来袭
  11. Python 批量修改文件名称测试
  12. 黑客游戏网址大全 – HACK GAME COLLECTION
  13. 想改变Facebook? 先改变扎克伯格!
  14. Python趣味编程 | 看看如何用Python生成素描风格的自拍照,并且加上Logo
  15. vue 四级联动 地址联动 vue级联选择
  16. Java论坛系统--3.系统用户角色权限表结构设计
  17. 电路中的VDD,DVDD,AVDD,VCC,AFVDD,DOVDD,IOVDD的区别,
  18. 区别 chown和chmod的用法
  19. 开源阅读书源_开源阅读畅读全网图书 有声读物
  20. sysbench 压测 安装

热门文章

  1. 用plt.scatter画散点图
  2. CoBOT助力ITSS技术要求标准制定和落地
  3. 【广告算法工程师入门 32】从直播答题,跳一跳,抢红包等产品策略扯到用户受益商业变现
  4. 4.12 使用反相命令反转图片色彩 [原创Ps教程]
  5. javafx label设置字体大小_如何把智能手机,设置成老年人模式?
  6. KSQL:Apache Kafka的流式SQL
  7. 【MATLAB】RGB转换为HSV三通道
  8. innodb锁-意向锁
  9. saltstack maser HA
  10. nginx整合fastdfs出现2个master进程没有worker进程的原因以及解决方法