INCREDIBLE_
2021-05-20 16:25
采纳率: 100%
浏览 44

大伙们,请问这道题用C++要怎么做呀?求帮忙

定义people(人员)类,具有的属性如下:姓名 char name[ll]、编号 char number[7]、性别 char sex[3]、生日 birthday、身份证号 char id [16]。其中“出生日期''声明为一个“日期'‘类内嵌子对象。people( 人员)类派生出student(学生)类,添加属性:班号 char classNO[7];从 people 类派生出 teacher(教师)类,添加属性:职务 char principalship [11]、部门char department[21]。从student类中派生出graduate(研究生)类,添加属性: 专业 char subject[21]、导师 teacher adviser;从 graduate 类和 teacher 类派生出 TA(助教 生)类。用成员函数实现对人员信息的录入和显示。要求包括:构造函数和析构函数、拷贝构造函数、内联成员函数、聚集。在主函数中对人员进行初始化,并输出相应信息。

【输入形式】

【输出形式】

TA name: Li Chao

No.: 011401

Department: CST

Class No.: cst61

Subject: computer science

Advisor: Zheng Li

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • qfl_sdu 2021-05-20 17:11
    已采纳

    写一个People类,其它的你参考着写吧。

    #include <string>
    class People
    {
    protected:
    	char name[11];
    	char number[7];
    	char sex[3];
    	class Date{
    	public:
    		int year;
    		int month;
    		int day;} birthday;
    	char id[16];
    public:
    	People()
    	{
    		memset(name,0,11);
    		memset(number,0,7);
    		memset(sex,0,3);
    		birthday.year = 2021;
    		birthday.month = 1;
    		birthday.day = 1;
    		memset(id,0,16);
    	}
    	People(People &p)
    	{
    		memcpy(name,p.name,11);
    		memcpy(number,p.number,7);
    		memcpy(sex,p.sex,3);
    		birthday.year = p.birthday.year;
    		birthday.month = p.birthday.month;
    		birthday.day = p.birthday.day;
    		memcpy(id,p.id,16);
    	}
    	~People(){}
    
    	inline char* getName(){return name;}
    };
    已采纳该答案
    评论
    解决 1 无用
    打赏 举报
  • CSDN专家-Time 2021-05-20 16:32

    建议自行设计该类。遇到难以解决的问题再寻求帮助。

    评论
    解决 无用
    打赏 举报
  • 有问必答小助手 2021-05-20 18:58

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题