C++仓库管理系统.docx
- 文档编号:1905747
- 上传时间:2022-10-25
- 格式:DOCX
- 页数:15
- 大小:17.64KB
C++仓库管理系统.docx
《C++仓库管理系统.docx》由会员分享,可在线阅读,更多相关《C++仓库管理系统.docx(15页珍藏版)》请在冰豆网上搜索。
C++仓库管理系统
employee.hemployee(员工)的类声明头文件
employee.cpp包含employee类的实现代码
Salesman.hSalesman(售货员)的类声明头文件
Salesman.cpp包含Salesman类的实现代码
Warehouseman.hwarehouseman(库管员)的类声明头文件
Warehouseman.cpp包含Warehouseman类的实现代码
manager.hmanager(经理)的类声明头文件
manager.cpp包含manager类的实现代码
EmployeeList.hEmployeeList类(员工链表)的类声明头文件
EmployeeList.cpp包含EmployeeList类的实现代码
main.cpp主程序
//****************************************
//employee.h*
//****************************************
#ifndefH_EMPLOYEE
#defineH_EMPLOYEE
classemployee//基类(员工)
{
private:
intnumber;//员工编号
charAddress[100];//家庭地址
protected:
charname[30];//员工姓名
floatfixedSalary;//固定工资
floatMonthSalary;//月薪
public:
employee();//构造函数,录入员工个人信息
voidShowInfor();//显示员工个人及工资信息
voidRecordInfor(char*pInfBuffer);//将个人信息写入缓冲区
//获得工作类别
virtualchar*GetWorkStyle()=0;
//计算员工工资的虚函数,因为只提供一个统一的接口,所以不需要添加任何实际的代码
virtualvoidCountSalary()=0;
};
#endif
//****************************************
//employee.cpp*
//****************************************
#include"employee.h"
#include"iostream.h"
#include"stdio.h"
//构造函数,录入员工个人信息
employee:
:
employee()
{
cout< //录入员工姓名 cout<<"请输入员工姓名: "; cin>>name; //录入员工编号 cout<<"请输入员工编号(1000-9999): "; cin>>number; //检查员工编号,保证编号正确 while(number<1000||number>9999) { cout< "; cin>>number; } //录入家庭地址 cout<<"请输入家庭地址: "; cin>>Address; //默认初始月薪为零 MonthSalary=0.0; }; //显示员工个人及工资信息 voidemployee: : ShowInfor() { cout< //显示员工姓名 cout<<"员工姓名: "< //显示员工编号 cout<<"员工编号: "< //显示家庭地址 cout<<"家庭地址: "< //显示工作类别 cout<<"工作类别: "< //显示月薪 if(MonthSalary==0.0) cout<<"月薪: 尚未计算"< else cout<<"月薪: "< }; //将个人信息写入缓冲区 voidemployee: : RecordInfor(char*pInfBuffer) { intj; j=sprintf(pInfBuffer,"员工姓名: %s\r\n",name); j+=sprintf(pInfBuffer+j,"员工编号: %d\r\n",number); j+=sprintf(pInfBuffer+j,"家庭地址: %s\r\n",Address); j+=sprintf(pInfBuffer+j,"工作类别: %s\r\n",GetWorkStyle()); if(MonthSalary==0.0) j+=sprintf(pInfBuffer+j,"月薪: 尚未计算\r\n\r\n"); else j+=sprintf(pInfBuffer+j,"月薪: %f\r\n\r\n",MonthSalary); } //**************************************** //Salesman.h* //**************************************** #ifndefH_SALESMAN #defineH_SALESMAN #include"employee.h" //售货员类 classSalesman: publicemployee { private: floatsaleSum;//售货员的销售额 floatgetRate;//售货员的提成比率 public: Salesman();//构造函数,录入售货员个人信息 char*GetWorkStyle();//获得工作类别 voidCountSalary();//计算售货员的工资 }; #endif //**************************************** //Salesman.cpp* //**************************************** #include"Salesman.h" #include"iostream.h" //构造函数,录入售货员个人信息 Salesman: : Salesman() { cout< //录入售货员的固定月薪 cout<<"请输入售货员的固定月薪: "; cin>>fixedSalary; //录入售货员的当月销售额 cout<<"请输入售货员的提成比率"; cin>>getRate; } //获得工作类别 char*Salesman: : GetWorkStyle() { return"售货员"; } //计算售货员的工资 voidSalesman: : CountSalary() { //得到售货员的当月销售额 cout<<"请输入售货员"< cin>>saleSum; //工资=固定工资+营业额×提成比率 MonthSalary=fixedSalary+saleSum*getRate; } //**************************************** //warehouseman.h* //**************************************** #ifndefH_WAREHOUSEMAN #defineH_WAREHOUSEMAN #include"employee.h" //库管员类 classWarehouseman: publicemployee { private: floatbonus;//库管员的奖金 public: Warehouseman();//构造函数,录入库管员个人信息 char*GetWorkStyle();//获得工作类别 voidCountSalary();//计算库管员的工资 }; #endif //**************************************** //warehouseman.cpp* //**************************************** #include"Warehouseman.h" #include"iostream.h" //构造函数,录入库管员个人信息 Warehouseman: : Warehouseman() {cout< //录入库管员的固定月薪 cout<<"请输入库管员的固定月薪: "; cin>>fixedSalary; } //获得工作类别 char*Warehouseman: : GetWorkStyle() { return"库管员"; } //计算库管员的工资 voidWarehouseman: : CountSalary() { //得到库管员的当月奖金 cout<<"请输入库管员"< cin>>bonus; //工资=固定工资+当月奖金 MonthSalary=fixedSalary+bonus; } //**************************************** //Manager.h* //**************************************** #ifndefH_MANAGER #defineH_MANAGER #include"Employee.h" //经理类 classManager: publicEmployee { private: floatOfficeExpense;//经理的办公费用 public: Manager();//构造函数,录入经理个人信息 char*GetWorkStyle();//获得工作类别 voidCountSalary();//计算经理的工资 }; #endif //**************************************** //Manager.cpp* //**************************************** #include"Manager.h" #include"iostream.h" //构造函数,录入经理个人信息 Manager: : Manager() { cout< //录入经理的固定月薪 cout<<"请输入经理的固定月薪: "< cin>>fixedSalary; } //获得工作类别 char*Manager: : GetWorkStyle() { return"经理"; } //计算经
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 仓库 管理 系统