C++仓库管理系统.docx

上传人:b****4 文档编号:976890 上传时间:2022-10-14 格式:DOCX 页数:15 大小:17.64KB
下载 相关 举报
C++仓库管理系统.docx_第1页
第1页 / 共15页
C++仓库管理系统.docx_第2页
第2页 / 共15页
C++仓库管理系统.docx_第3页
第3页 / 共15页
C++仓库管理系统.docx_第4页
第4页 / 共15页
C++仓库管理系统.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

C++仓库管理系统.docx

《C++仓库管理系统.docx》由会员分享,可在线阅读,更多相关《C++仓库管理系统.docx(15页珍藏版)》请在冰豆网上搜索。

C++仓库管理系统.docx

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"经理";

}

//计算经

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1