公司工资管理系统程序设计报告.doc
《公司工资管理系统程序设计报告.doc》由会员分享,可在线阅读,更多相关《公司工资管理系统程序设计报告.doc(28页珍藏版)》请在沃文网上搜索。
1、面向对象程序设计综合实验报告目 录一、 课程设计题目2二、主要功能分析 3三、设计思路 3四、编码实现 3五、程序使用注意事项25六、运行结果25七、心得及体会28一、课程设计题目公司工资管理系统设计要求:(1)公司主要有4类人员:经理、技术员、销售员、销售经理。要求存储这些人的职工号、姓名、月工资、岗位、年龄、性别等信息。(2)工资的计算办法:经理:固定月薪为8000;技术员:工作时间小时工资(100元每小时);销售员:销售额4%提成;销售经理:底薪(5000)所辖部门销售额总额0.5%;(3)类的层次结构大体如下:雇员类技术员类经理类销售员类销售经理类(4)输入数据要求每类人员不能少于4人
2、,并按以下格式输出:职工号姓名性别年龄岗位工资排名及某销售经理所辖部门各销售员的业绩及自己的工资表:职工号姓名销售额销售额合计:(5)总体设计,要有一个菜单,用于选择各项功能,其中数据录入:输入各种数据;数据统计:各销售经理的工资计算及最终按工资进行的冒泡排序;数据打印:打印上述表格;数据备份:把相关数据写入文件;退出:退出本系统;注:各项菜单都调用一个函数来实现。二、主要功能分析1、资料录入:通过键盘输入公司各项职员的各项数据;2、资料统计:统计各销售经理下属销售员的销售额及销售额之和;销售经理按工资进行冒泡排序;3、数据打印:按照表格的格式在屏幕上输出各类员工的信息;4、资料备份:把各类员
3、工的数据信息写入文件中保存;5、退出:退出本系统三、设计思路1、整体考虑程序应该实现的功能,有数据输入,数据统计,数据打印,数据备份和退出系统5个。2、首先定义了一个Employee的雇员基类,然后由此派生出Technician,Manager,Seller三个类,并且Manager类和Seller类为虚拟继承。然后定义一个Salesmanager类多重继承于Manager类和Seller类。所有的继承都为共有继承。3、通过switch语句判断进行什么操作。四、编码实现#include#include#include#include#includeusing namespace std;ofs
4、tream outfile;const int B=4;const int T=4;const int SB=2;const int S=4;double wage1(int n);void managerinformation();/经理信息void technicianinformatian();/技术员信息void salesmanagerinformation();/销售经理信息void sellerinformation();/销售员信息void total();/求工资函数void maopao();/冒泡排序进行工资排列void yejibiao();/打印业绩表格void SB
5、rank();/销售经理工资排序void excelhead();/表头void excelmiddle();/表中void excelend();/表尾void backup_yejibiao(); /void backup_SBrank(); /void backup_technicianinformatian(); /各项信息表格备份void backup_managerinformation(); /void backup_salesmanagerinformation(); /void backup_sellerinformation(); /class Employeepublic
6、:int nume() return(num);/职工号string nam()return(name);/名字char showsex() return(sex); /性别int showage() return(age);/年龄protected:int num;string name;char sex;int age;int wage;class Manager:virtual public Employeepublic:Manager() /8000元为经理固定月薪wage=8000;int managerwage() return(wage);void set_in()coutnum
7、;coutendl;coutname;coutendl;coutsex;coutendl;coutage;coutendl;class Technician:public Employeepublic:void set_in()coutnum;coutendl;coutname;coutendl;coutsex;coutendl;coutage;coutendl;coutworktime;coutendl;int get_wage()/技术员工资算法return (worktime*100); /100元为单位小时工资protected:int worktime;class Seller:vi
8、rtual public Employeepublic:int bossnume() return(bossnum);int money() return(salesmoney); void set_in()coutnum;coutendl;coutname;coutendl;coutsex;coutendl;coutage;coutendl;coutsalesmoney;coutendl;coutbossnum;coutendl; double get_wage()/销售员工资算法 return (salesmoney*0.04);protected:int salesmoney;int b
9、ossnum;class Salesmanager:public Manager,public Sellerpublic:Salesmanager()allsale=0; void set_in()coutnum;coutendl;coutname;coutendl;coutsex;coutendl;coutage;coutendl;double get_wage()/销售经理工资算法return (5000+allsale*0.005); /5000元为销售经理底薪protected:int allsale;Manager bossB;Technician techniT;Seller sa
10、lesmanS;Salesmanager salesbossSB;int salesbosstotaleSB=0;Salesmanager exchangeSB;int exchange;int b=0,t=0,sb=0,s=0;int Inputboss()for(int i=0;iB;i+)bossi.set_in(); coutendl;return 0;/经理数据处理函数int Inputtechni()for(int j=0;jT;j+)technij.set_in(); coutendl;return 0;/技术员数据处理函数int Inputsalesman()for(int n
11、=0;nS;n+)salesmann.set_in(); coutendl;return 0;/销售员数据处理函数int Inputsalesboss()for(int m=0;mSB;m+)salesbossm.set_in();return 0;/销售经理数据处理函数double wage1(int n)return(5000+n*0.005);/以下为第二步计算工资代码void total() /求总销售额for(int n=0;nS;n+)for(int m=0;mSB;m+)if(salesmann.bossnume()=salesbossm.nume()salesbosstotal
12、em+=salesmann.money(); break;void maopao() /冒泡法排序for(int n=1;nSB;n+)for(int m=1;msalesbosstotalem)exchangeSB=salesbossm-1;salesbossm-1=salesbossm;salesbossm=exchangeSB;exchange=salesbosstotalem-1;salesbosstotalem-1=exchange;salesbosstotalem=exchange;void yejibiao() /打印表格 for(int n=0;nSB;n+)cout职工号为s
13、alesbossn.nume()销售经理salesbossn.nam()下属的销售员业绩为:endl; coutendl; cout职工号 姓名 销售额 endl;for(int j=0;jS;j+)if(salesmanj.bossnume()=salesbossn.nume()coutendl;coutsetw(12)salesmanj.nume()setw(12)salesmanj.nam()setw(14)salesmanj.money()endl; coutendl; cout销售额总计: setw(28)salesbosstotalenendl; coutendl;void SBr
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 公司 工资管理 系统 程序设计 报告