第五次C++上实验

/*
*文件名称:Ex1-5.cpp    
*作者:邓利超    
*完成日期:2016年5月6日    
*对任务及求解方法的描述部分:    
*输入描述:无    
*问题描述:1.程序填空 
           2.类的编写 
*程序输出:按要求写出程序 
*问题分析:略    
*算法分析:略   
*/   
//1.  
#include <iostream>    
#include <string>    
using namespace std;    
class Person    
{    
    string name;  // 姓名    
    int age;      // 年龄    
public:    
  
    Person() {}    
    void setname(string na)    
    {    
        name=na;    
    }    
    void setage(int a)    
    {    
        age=a;    
    }    
    string getname()    
    {    
        return name;    
    }    
    int getage()    
    {    
        return age;    
    }    
};    
class Leader:public Person    //继承Person的公有成员
{    
    string job;     // 职务    
    string dep;     // 部门  
public:    
    Leader() { }    
    void setjob(string jb)    
    {    
        job=jb;    
    }    
    void setdep(char dp[])    
    {    
        dep=dp;          
    }    
    string getjob()    
    {    
        return job;    
    }    
    string getdep()    
    {    
        return dep;    
    }    
};    
class Engineer:public Leader     // 继承Leader的公有成员
{    
    string major;     // 专业    
    string prof;      // 职称    
public:    
    Engineer () { }    
    void setmajor(string maj)    
    {    
        major=maj;    
    }    
    void setprof(string pf)    
    {    
        prof=pf;    
    }    
    string getmajor()    
    {    
        return major;    
    }    
    string getprof()    
    {    
        return prof;    
    }    
};    
class chairman:public Engineer { } ;// 继承Engineer的公有成员
int main()    
{    
    chairman c;    
    c.setname("张三");    
    c.setage(42);    
    c.setjob("处长");    
    c.setdep("技术处");    
    c.setmajor("轮机设计");    
    c.setprof("高级工程师");    
    cout <<c.getname() << "," <<c.getage()<<" 岁,担任" <<c.getdep() <<c.getjob() <<endl;    
    cout <<c.getprof() << ",从事" << c.getmajor()<< "专业" << "。 " << endl;    
    return 0;    
} 

#include<iostream>  
#include<string>  
using namespace std;  
class Teacher
{  
    string title;  
public:  
    void get(string name,int age,string sex,string title);//输入职称、名字、年龄、性别    
    void show_it();
	string name;  
    int age;  
    string sex;  
};  
void Teacher::get(string name,int age,string sex,string title)  
{  
    this->name=name;  
    this->age=age;  
    this->sex=sex;
    this->title=title; 
 }  
void Teacher::show_it()  
{   
    cout<<"姓名:"<<name<<endl;  
    cout<<"年龄:"<<age<<endl;  
    cout<<"性别:"<<sex<<endl;  
	cout<<"职称:"<<title<<endl;  
}  
class Cadre:public Teacher  
{  
    string post;  
public:   
    void get1(string post);//输入职务  
    void showpost(); 
};  
void Cadre::get1(string post)  
{  
    this->post=post;  
}  
void Cadre::showpost()  
{  
    Teacher::show_it();  
    cout<<"职务:"<<post<<endl;  
}  
class Teacher_Cadre:public Cadre  
{  
    double wages;  
public:   
    void get2(double wages);//输入工资  
    void show();//最终输出  
};  
void Teacher_Cadre::get2(double wages)  
{ 
    this->wages=wages;  
}  
void Teacher_Cadre::show()  
{  
    Cadre::showpost();  
    cout<<"工资:"<<wages<<"元"<<endl;  
}  
int main()  
{  
    Teacher_Cadre c;  
    c.get("曾辉",42,"男","副教授");    
    c.get1("主任");  
    c.get2(1534.5);  
    c.show();  
    return 0;  
}  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值