INCREDIBLE_ 2021-05-20 16:25 采纳率: 66.7%
浏览 204
已采纳

大伙们,请问这道题用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;}
    };
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号