C++第四次作业

来源:互联网 发布:单片机tssop28封装尺寸 编辑:程序博客网 时间:2024/05/29 20:01
请在下面程序的横线处填上适当内容,以使程序完整,并使程序的输出为:
Name: 龙三
Grade: 19
[cpp] view plain copy
#include <iostream>  
#include <string>  
using namespace std;  
class Person{  
public:  
    Person(string s){  
        name=s;  
    }  
    void display( ){  
        cout<<"Name: "<<name<<endl;  
    }  
private:  
    string name;  
};  
class Student:public Person//(1)参考教材P169加底纹部分  
{  
public:  
    Student(string s, int g):Person(s) // (2)  
    {grade=g;}  
    void display1( ) {  
        display();   //  (3)  
        cout<<"Grade: "<<grade<<endl;  
    }  
private:  
    int grade;  
};  
int main( )  
{  
    Student s("龙三",19);  
    s.display1();       //  (4)  
    return 0;  
}  










   定义一个名为CPerson的类,有以下私有成员:姓名、身份证号、性别和年龄,成员函数:构造函数、输出信息的函数。并在此基础上派生出CEmployee类,派生类CEmployee增加了两个新的数据成员,分别用于表示部门和薪水。要求派生类CEmployee的构造函数显示调用基类CPerson的构造函数,并为派生类CEmployee定义输出信息的函数。
[cpp] view plain copy
#include<iostream>  
#include<string>  
  
using namespace std;  
  
class CPerson  
{  
protected:  
    string m_szName;  
    string m_szId;  
    int m_nSex;//0:女,1:男  
    int m_nAge;  
public:  
    CPerson(string name,string id,int sex,int age):m_szName(name),m_szId(id),m_nSex(sex),m_nAge(age){}  
    void Show1()  
    {  
        string sex=(m_nSex)?"男":"女";  
        cout<<m_szName<<"   "<<m_szId<<"      "<<sex<<"      "<<m_nAge;  
    }  
};  
  
class CEmployee:public CPerson  
{  
private:  
    string m_szDepartment;  
    double m_Salary;  
public:  
    CEmployee(string name,string id,int sex,int age,string department,double salary):CPerson(name,id,sex,age)  
    {  
        m_szDepartment=department;  
        m_Salary=salary;  
    }  
    void Show2()  
    {  
        Show1();  
        cout<<"  "<<m_szDepartment<<"    "<<m_Salary<<endl;  
    }  
};  
  
int main()  
{  
    string name,id,department;  
    int sex,age;  
    double salary;  
    cout<<"请输入雇员的姓名,ID,性别(0:女,1:男),年龄,部门,薪水:\n";  
    cin>>name>>id>>sex>>age>>department>>salary;  
    cout<<"姓名    ID    性别    年龄    部门    薪水"<<endl;  
    CEmployee employee1(name,id,sex,age,department,salary);  
    employee1.Show2();  
    return 0;  
}  
0 0
原创粉丝点击