继承与派生的应用3
来源:互联网 发布:java 获取当月第一天 编辑:程序博客网 时间:2024/06/06 13:25
/*编写一个程序实现小型公司的工资管理。人员:经理、技术人员、销售员、销售经理。信息:编号、姓名、月工资信息。经理拿固定工资8000;技术人员每小时100元;销售员按当月销售额的4%提成;销售经理既拿固定工资5000,又拿销售提成,销售提成为所在部门销售额的0.5%。*/#include<iostream>using namespace std;class employee{protected:int ID;char name[10];double salary;static int ID_NUM;public:employee(){salary=0;ID=ID_NUM++;}void pay(){}void Setname(char *name){strcpy(this->name,name);}int GetID(){return ID;}char *Getname(){return name;}double GetSalary(){return salary;}};int employee::ID_NUM=1000;class technician:public employee{private:int hours;double hour_rate;public:technician(){hour_rate=100;}void GetHours(int hours){this->hours=hours;}void pay(){salary=hours*hour_rate;}};class manager:virtual public employee{protected:double month_pay;public:manager(){month_pay=8000;} void pay(){salary=month_pay;}};class salesman:virtual public employee{protected:double CommRate;double sales;public:salesman(){CommRate=0.04;}void GetSales(double sales){this->sales=sales;} void pay(){salary=sales*CommRate;}};class salesmanager:public manager,public salesman{public:salesmanager(){month_pay=5000;CommRate=0.005;} void pay(){salary=month_pay+CommRate*sales;}};int main(){int wt,sale1,sale2; manager P1;technician P2;salesman P3;salesmanager P4;P1.Setname("TOM");P2.Setname("MARY");P3.Setname("JACK");P4.Setname("BOB"); P1.pay();cout<<"请输入技术人员的工作时间:";cin >> wt;P2.GetHours(wt);P2.pay();cout<<"请输入销售员的销售额:"; cin >> sale1;P3.GetSales(sale1); P3.pay();cout<<"请输入销售经理管辖的部门的销售额:";cin >> sale2;P4.GetSales(sale2);P4.pay();cout<<"WorkNum Name Salary Positon"<<endl;cout<<P1.GetID()<<"\t"<<P1.Getname()<<"\t"<<P1.GetSalary()<<"\tmanager"<<endl;cout<<P2.GetID()<<"\t"<<P2.Getname()<<"\t"<<P2.GetSalary()<<"\ttechnician"<<endl;cout<<P3.GetID()<<"\t"<<P3.Getname()<<"\t"<<P3.GetSalary()<<"\tsalesman"<<endl;cout<<P4.GetID()<<"\t"<<P4.Getname()<<"\t"<<P4.GetSalary()<<"\tsalesmanager"<<endl;return 0;}
0 0
- 继承与派生的应用3
- 派生与继承的应用1
- 继承与派生3
- 类的继承与派生
- 类的继承与派生
- 类的继承与派生
- 类的继承与派生
- C++的继承与派生
- 类的继承与派生
- 类的继承与派生
- C++的继承与派生
- C++的继承与派生
- 类的派生与继承
- C++的继承与派生
- 继承与派生的浅尝
- 类的继承与派生
- 类的继承与派生
- 类的派生与继承
- 第五届蓝桥杯——基础练习:01字串
- Page Pool of the wince5/6
- Making Your Next Move
- SQL开发利器SQL Prompt 5.1完全破解+使用教程
- SQL INSERT INTO 语句
- 继承与派生的应用3
- 职场新人要先学会沟通
- mysql基本操作
- cocos2dx,ndk编译protobuf
- 关于JAVA多线程并发synchronized的测试与合理使用
- jQuery中setTimeout的几种使用方法
- Graph Databases—Chapter 5 Graph Databases 阅读笔记
- jquery 判断滚动条到达了底部,怎么判断滚动条是否又到达的顶
- JavaScript的中写了方法,没有调用之前,即使里面有错,在浏览器上也不会报错。