编程题2_数据和教师学生类_第1页
编程题2_数据和教师学生类_第2页
编程题2_数据和教师学生类_第3页
编程题2_数据和教师学生类_第4页
编程题2_数据和教师学生类_第5页
免费预览已结束,剩余3页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、名称编程题2_数据及教师学生类备注描述题目描述:有五个类,各类的主要数据成员见下方说明,请自己定义合理的成员函数,编程实现体现该继承 关系的程序,并定义教师对象、学生对象、研究生对象、在职研究生对象,输出他们的信息。关于数据成员:数据类Data :成员name 保存姓名;/该类是Teacher类和Student类的基类教师类Teacher :增加成员sal保存工资;学生类Student :增加成员id保存学号; 该类是PostGrad 类的基类研究生类PostGrad :增加成员dn保存系别;教师中的在职研究生类 Tpost :不另外定义数据成员。该类有两个直接基类:Teacher类和研 究生

2、类PostGrad关于成员函数:每个类中均定义输出所有数据成员的函数void print ()。具体代码可参考主函数及对应的输出结果样例来完成。主函数代码如下:int main ()Teacher tobj("Zhuhong”, 2000);Student sobj("Wanghui", "B05030417");PostGrad pobj("Lixuefeng", "Yj040217", "Computer Department");Tposttpobj("Liuling&

3、quot;, "Yz040318", "Society Department", 800);cout << "the teacher:n"tobj.print ();cout << "nthe student:n"sobj.print ();cout << "nthe postgraduate:n"pobj.print ();cout << "nthe teacher and postgraduate:n"tpobj.print

4、 ();return 0;提示:(1)最前面需要作相应的文件包含(2)请注意类之间的继承关系,可能存在虚基类在保存并预览之后,点 开:“测试用例”选项 卡,再选择卜方的“添 加”,加入两组测试测试用例,无输入部分: 输出部分:the teacher: Name:Zhuhong sal=2000the student: Name:Wanghuiid=B05030417the postgraduate: Name:Lixuefeng id=Yj040217 dn=Computer Departmentthe teacher and postgraduate: Name:Liuling sal=80

5、0id=Yz040318dn=Society Department参考源程序代码#include <iostream>#include <string> using namespace std; class Data public: Data(char *na) name = new charstrlen(na)+1; strcpy(name, na);Data() delete name;参考源代码仅供老师参考 加到系统中,不要添void print()cout << "Name:" << name << end

6、l;protected:char *name;;class Student: virtual public Datapublic:Student(char *na, char *pid): Data(na) id = new charstrlen(pid)+1; strcpy(id, pid);Student()delete id;void print()Data二print();cout << "id=" << id << endl;protected:char *id;;class Teacher: virtual public Da

7、tapublic:Teacher(char *na, float psal): Data(na)sal = psal;void print()Data二print();cout << "sal=" << sal << endl;protected:float sal;class Postgrad: public Studentprotected:char *dn;public:Postgrad(char *na, char *pid, char *p): Data(na), Student(na, pid) dn = new charst

8、rlen(p)+1;strcpy(dn, p);Postgrad()delete dn;void print()Student:print();cout << "dn=" << dn << endl;;class Tpost: public Teacher, public Postgradpublic:Tpost(char *na, char *pid, char *p, float psal): Data(na), Teacher(na, psal), Postgrad(na,pid,p);void print()Teacher二pri

9、nt();cout << "id=" << id << endl;cout << "dn=" << dn << endl;int main()Teacher tobj("Zhuhong”, 2000);Student sobj("Wanghui", "B05030417");Postgrad pobj("Lixuefeng", "Yj040217", "Computer Departm

10、ent");Tpost tpobj("Liuling", "Yz040318", "Society Department", 800); cout << "the teacher:n"tobj.print();cout << "nthe student:n"sobj.print();cout << "nthe postgraduate:n"pobj.print();cout << "nthe teacher and postgraduate:n"tpobj.print();return

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论