/*
2薪酬(10分)
题目内容:
为某销售公司定义一个员工类employee,其中包含工号、姓名、基本工资3个数据成员。
由employee类派生出销售员工类salesman,salesman类里包含成员函数print,可以输出销售员工的工号、姓名、薪酬,其中销售员工的薪酬就是基本工资。
由salesman类再派生出销售经理类salesmanager,salesmanager类里包含一个数据成员com表示每月的销售额,也包含print,功能为输出销售经理的工号、姓名、薪酬,其中销售经理的薪酬为基本工资加上销售额的百分之一。
要求三个类里面均具有各自的构造函数。
输入格式:
第一行输入一个销售员工的工号、姓名、基本工资;
第二行输入一个销售经理的工号、姓名、基本工资、销售额。
输出格式:
第一行输出销售员工的工号、姓名、薪酬;
第二行输出销售经理的工号、姓名、薪酬。
输入样例:
1001 wangjun 4000
1002 duyan 2000 800000
输出样例:
1001 wangjun 4000
1002 duyan 10000
*/
#include
#include
#include
using namespace std;
class Employee{
protected:
int id;
string name;
int baseSalary;
int salary;
public:
Employee(int &id,string &name,int &baseSalary);
};
Employee::Employee(int &id,string &name,int &baseSalary):id(id),name(name),baseSalary(baseSalary){
salary=baseSalary;
}
class Salesman:public Employee{
public:
void print();
Salesman(int &id,string &name,int &baseSalary);
};
Salesman::Salesman(int &id,string &name,int &baseSalary):Employee(id,name,baseSalary){}
void Salesman::print(){
cout< } class Salesmanager:public Salesman { protected: int com; public: Salesmanager(int &id,string &name,int &baseSalary,int &com); }; Salesmanager::Salesmanager(int &id,string &name,int &baseSalary,int &com):Salesman( id,name,baseSalary),com(com){ salary+=com*0.01; } int main() { int id,baseSalary,com; string name; cin>>id>>name>>baseSalary; Salesman salesman=Salesman(id,name,baseSalary); cin>>id>>name>>baseSalary>>com; Salesmanager manager=Salesmanager(id,name,baseSalary,com); salesman.print(); manager.print(); return 0; }