小型公司的工资管理系统实训报告_第1页
小型公司的工资管理系统实训报告_第2页
小型公司的工资管理系统实训报告_第3页
小型公司的工资管理系统实训报告_第4页
小型公司的工资管理系统实训报告_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PAGE PAGE 48面向对象象实训报报告题目:小型公公司的工工资管理理系统指导老师师: xxxx学生姓名名:xxxx班 级:计Yxxxx学 号: xxxxxxxxxxxxxxx时 间: xxxxx年x月x日目录一、实训训内容与与目的2二、设计计分析3三、执行行结果和和结果分分析223四、实训训总结 27实训内容容:小型公司司的工资资管理设计任务务编写一个个小型公公司的工工资管理理程序。该公司司主要有有4类人人员:经经理、兼兼职技术术人员、销售员员和销售售经理。其中月月薪计算算方法为为:经理理固定月月薪80000元元,兼职职技术如如愿1000元/小时,销售员员为当月月销售额额的4%,销售售经

2、理保保底工资资50000元另另加所管管部门销销售额的的5。设计要求求职工编号号自动产产生(从从10000起编编号)。将公司人人员的编编号、姓姓名和月月薪等信信息保存存在文件件中,然然后从文文件中读读入这些些信息并并显示。如果访访问文件件失败,采用异异常处理理机制解解决。设计输入入,输出出的界面面。(成成绩为优优良,需需采用MMFC方方式。若若设计困困难可以以使用DDOS方方式)设计分析析:类的定义义:“empployyee.h”#inccludde#inccludde#inccludde#inccludde#inccludde#inccluddeclasss eemplloyeeepublli

3、c:empployyee();douublee geernoo();chaar *gettnamme();chaar *gerrposst();douublee geetsaalarry();virrtuaaldouublee paay()=0; emmplooyeee(dooublle nn,chhar minngzii200,ddoubble s) nuumbeer=nn;sttrcppy(nnamee,miingzzi);inncomme=ss; eemplloyeee();prottectted: dooublle nnumbber; chhar namme220; chhar pos

4、st220; dooublle inccomee;classs TTechhnicciann: pubblicc emmplooyeeeprottectted: douublee hoour; douublee peer;publlic:douublee Seet_hhourr();douublee paay();classs SSaleemann:viirtuual pubblicc emmplooyeeeprottectted: douublee saalarry;/销售售额publlic: voiid ssalee(); douublee paay();classs MManaagerr

5、:viirtuual pubblicc emmplooyeee prootecctedd:publlic: douublee paay();classs SSaleesmaanagger:virrtuaal ppubllic Mannageer,vvirttuall puubliic SSaleemannpubllic: douublee paay();struuct perrsonnintt ggongghaoo;chaar xxinggminng220;chaar zzhiwwei20;flooat shoouruu;flooat xiaaoshhi;voidd saaverrensshu

6、();int reaadreenshhu();voidd deelettgonn(innt xx);voidd deelettnamme(iint x);voidd reead(intt x);voidd xiiugaai_aall(intt x);voidd saavettechh(innt xx,chhar *y,chaar *z,ffloaat ee,flloatt hoo);voidd saave(intt x,chaar *y,ccharr *zz,flloatt e);(2)”chaangee.cppp”#inccluddeeemplloyeee.hhint k;voidd saa

7、ve(intt x,chaar *y,ccharr *zz,flloatt e)/保保存文件件strructt peersoon aa;a.ggongghaoo=x;strrcpyy(a.xinngmiing,y);strrcpyy(a.zhiiweii,z);a.sshouuru=e;couut工号号:a.gonnghaao 姓名:a.xxinggminng 职位:a.zzhiwwei 工资资:a.shoouruu enndl;fsttreaam ccun;cunn.oppen(保存存人员.txtt,iios:appp|iios:ouut);if(!cuun)coout cannnott o

8、ppen filleenndl;cunnaa.goonghhaoenndl;cunnaa.zhhiweeienddl;cunnaa.xiingmminggeendll;cunnaa.shhourruenddl;cunn.cllosee();voidd saavettechh(innt xx,chhar *y,chaar *z,ffloaat ee,flloatt hoo)/专专用于技技术员的的保存strructt peersoon aa;a.ggongghaoo=x;strrcpyy(a.xinngmiing,y);strrcpyy(a.zhiiweii,z);a.sshouuru=e;a.x

9、xiaooshii=hoo;couut工号号:a.gonnghaao 姓名:a.xxinggminng 职位:a.zzhiwwei 工作作小时:a.xxiaooshii 工工资:aa.shhourru eendll;fsttreaam ccun;cunn.oppen(保存存人员.txtt,iios:appp|iios:ouut);if(!cuun)coout cannnott oppen filleenndl;cunnaa.goonghhaoenndl;cunnaa.zhhiweeienddl;cunnaa.xiingmminggeendll;cunnaa.xiiaosshienndl;cun

10、naa.shhourruenddl;cunn.cllosee();voidd saaverrensshu()/保保存在职职总人数数,以便便读取数数据fsttreaam ccun;cunn.oppen(个数数.txxt,ioss:ttrunnc|iios:inn);if(!cuun)coout cannnott oppen filleenndl;cunnkkeendll;cunn.cllosee();int reaadreenshhu()/读读取在职职总人数数fsttreaam ccun;cunn.oppen(个数数.txxt,ioss:iin|iios:ouut);if(!cuun)coout

11、 cannnott oppen fillekk;retturnn k;voidd reead(intt x)/读读取在职职人员信信息,参参数x为为总人数数if(x=0)coout还还没有任任何人员员的信息息,请先先添加人人员的信信息!eendll;strructt peersoon aa300;fsttreaam ccun;intt i=0;cunn.oppen(保存存人员.txtt,iios:inn|ioos:outt);if(!cuun)coout cannnott oppen filleenndl;whiile(iaii.ggongghaoo;cuunaii.zzhiwwei;cuuna

12、ii.xxinggminng;iff(sttrcmmp(aai.zhhiweei,技术员员)=0)cunnaai.xiiaosshi;cuunaii.sshouuru;iff(sttrcmmp(aai.zhhiweei,技术员员)=0)couut工号号:ai.gonnghaao 姓名:aii.xxinggminng 职位:aii.zzhiwwei 工作小小时 aai.xiiaosshi 工资资:ai.shoouruu enndl; ellseccoutt工号:aii.ggongghaoo 姓姓名:aai.xiingmmingg 职职位:aai.zhhiweei 工资:aii.sshouuru

13、enddl;i+;cunn.cllosee();voidd deelettgonn(innt xx)/按按工号删删除函数数,参数数x为总总人数if(x=0)coout没没有任何何员工的的信息,请先增增加员工工的信息息enddl;strructt peersoon aa1330;strructt peersoon aa2330;fsttreaam ccun;intt i=0;cunn.oppen(保存存人员.txtt,iios:inn|ioos:outt);if(!cuun)coout cannnott oppen filleenndl;whiile(ia1i.gonnghaao;cuuna1i

14、.zhiiweii;cuuna1i.xinngmiing;iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)ccuna11i.xiiaosshi;cuuna1i.shoouruu;iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)ccoutt工号:a1i.gonnghaao 姓名:a1i.xinngmiing 职位位:a11i.zhhiweei 工工作小时时 a11i.xiiaosshi 工资资:a11i.shhourru eendll; ellseccoutt工号:a1i.gonnghaao 姓名:a1i.xinngmiing 职位位:a11i

15、.zhhiweei 工资:a1i.shoouruu enndl;i+;cunn.cllosee();/couut请输输入要删删除人员员的工号号:gg;i=00;whiile(g!=a1i.gonnghaao)i+;if(g!=a1i.gonnghaao)coout没没找到!enddl;elsseg=i;foor(ii=0;i!=g;ii+)aa2ii.ggongghaoo=a11i.goonghhao;sstrccpy(a2i.zhiiweii,a11i.zhhiweei);sstrccpy(a2i.xinngmiing,a1i.xinngmiing);iif(sstrccmp(a1i.zhi

16、iweii,技技术员)=0)a2i.xiaaoshhi=aa1ii.xxiaooshii;aa2ii.sshouuru=a1i.shoouruu;forr(i;ixx;i+)aa2ii.ggongghaoo=a11i+1.gonnghaao;sstrccpy(a2i.zhiiweii,a11i+1.zhiiweii);sstrccpy(a2i.xinngmiing,a1i+11.xxinggminng);iif(sstrccmp(a1i+11.zzhiwwei,技术术员)=00)a2i.xiaaoshhi=aa1ii+1.xiiaosshi;aa2ii.sshouuru=a1i+11.ssho

17、uuru;foor(iint l=00;l(x-1);l+)iif(sstrccmp(a2l.zhiiweii,技技术员)=0)couut工号号:a22l.goonghhao 姓名名:a22l.xiingmmingg 职职位:aa2ll.zzhiwwei 工作小小时 aa2ll.xxiaooshii 工工资:aa2ll.sshouuru enddl;eelseecouut工号号:a22l.goonghhao 姓名名:a22l.xiingmmingg 职职位:aa2ll.zzhiwwei 工资资:a22l.shhourru eendll;fsstreeam cunn1;i=0;cuun1.ope

18、en(保存人人员.ttxt,ioos:truunc);iff(!ccun11)ccoutt caannoot oopenn fiileeendll;whhilee(i(x-1)ccun11aa2ii.ggongghaooeendll;ccun11aa2ii.zzhiwweienndl;ccun11aa2ii.xxinggminngenddl;iif(sstrccmp(a2i.zhiiweii,技技术员)=0)cunn1a2i.xiaaoshhienddl;ccun11aa2ii.sshouuruenndl;ii+;cuun1.cloose();fsstreeam cunn2;cuun2.ope

19、en(个数.txtt,iios:trruncc|ioos:in);iff(!ccun22)ccoutt caannoot oopenn fiileeendll;cuun2(xx-1)eendll;coout成成功删除除一个员员工的数数据enndl;cuun2.cloose();voidd deelettnamme(iint x)/按按姓名删删除函数数,参数数x为总总人数if(x=0)coout没没有任何何员工的的信息,请先增增加员工工的信息息enddl;strructt peersoon aa1330;strructt peersoon aa2330;fsttreaam ccun;intt i

20、=0;cunn.oppen(保存存人员.txtt,iios:inn|ioos:outt);if(!cuun)coout cannnott oppen filleenndl;whiile(ia1i.gonnghaao;cuuna1i.zhiiweii;cuuna1i.xinngmiing;iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)ccuna11i.xiiaosshi;cuuna1i.shoouruu;iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)ccoutt工号:a1i.gonnghaao 姓名:a1i.xinngmiing 职位位:a

21、11i.zhhiweei 工工作小时时 a11i.xiiaosshi 工资资:a11i.shhourru eendll; ellseccoutt工号:a1i.gonnghaao 姓名:a1i.xinngmiing 职位位:a11i.zhhiweei 工资:a1i.shoouruu enndl;i+;cunn.cllosee();/couut请输输入要删删除人员员的姓名名:xxingg;intt g;i=00;whiile(strrcmpp(xiing,a1i.xinngmiing)i+;g=ii;forr(i=0;ii!=gg;i+)a22i.goonghhao=a1i.gonnghaao;s

22、ttrcppy(aa2ii.zzhiwwei,a1i.zhiiweii);sttrcppy(aa2ii.xxinggminng,aa1ii.xxinggminng);iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)aa2ii.xxiaooshii=a11i.xiiaosshi;a22i.shhourru=aa1ii.sshouuru;forr(i;ixx;i+)a22i.goonghhao=a1i+11.ggongghaoo;sttrcppy(aa2ii.zzhiwwei,a1i+11.zzhiwwei);sttrcppy(aa2ii.xxinggminng,aa1i

23、i+1.xiingmmingg);iff(sttrcmmp(aa1ii+1.zhhiweei,技术员员)=0)aa2ii.xxiaooshii=a11i+1.xiaaoshhi;a2i.shoouruu=a11i+1.shoouruu;forr(innt ll=0;l(x-11);ll+)iff(sttrcmmp(aa2ll.zzhiwwei,技术术员)=00)coout工工号:aa2ll.ggongghaoo 姓姓名:aa2ll.xxinggminng 职位:a2l.zhiiweii 工作作小时 a2l.xiaaoshhi 工资:a2l.shoouruu enndl;ellseccoutt工

24、号:a2l.gonnghaao 姓名:a2l.xinngmiing 职位位:a22l.zhhiweei 工资:a2l.shoouruu enndl;fsttreaam ccun11;i=00;cunn1.oopenn(保保存人员员.txxt,ioss:ttrunnc);if(!cuun1)coout cannnott oppen filleenndl;whiile(i(x-11)cuun1a22i.goonghhaoenndl;cuun1a22i.zhhiweeienddl;cuun1a22i.xiingmminggeendll;iff(sttrcmmp(aa2ii.zzhiwwei,技术术员

25、)=00)ccun11aa2ii.xxiaooshiieendll;cuun1a22i.shhourruenddl;i+;cunn1.cclosse();fsttreaam ccun22;cunn2.oopenn(个个数.ttxt,ioos:truunc|ioss:iin);if(!cuun2)coout cannnott oppen filleenndl;cunn2(x-1)enndl;couut成功功删除一一个员工工的数据据enddl;cunn2.cclosse();voidd xiiugaai_aall(intt x)/修修改一条条记录的的内容,参数xx为总人人数strructt pee

26、rsoon aa1330;strructt peersoon aa2330;fsttreaam ccun;intt i=0;cunn.oppen(保存存人员.txtt,iios:inn|ioos:outt);if(!cuun)coout cannnott oppen filleenndl;whiile(ia1i.gonnghaao;cuuna1i.zhiiweii;cuuna1i.xinngmiing;iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)ccuna11i.xiiaosshi;cuuna1i.shoouruu;iff(sttrcmmp(aa1ii.zzhiw

27、wei,技术术员)=00)ccoutt工号:a1i.gonnghaao 姓名:a1i.xinngmiing 职位位:a11i.zhhiweei 工工作小时时 a11i.xiiaosshi 工资资:a11i.shhourru eendll;ellseccoutt工号:a1i.gonnghaao 姓名:a1i.xinngmiing 职位位:a11i.zhhiweei 工资:a1i.shoouruu enndl;i+;intt g,gonnghaao1;chaar xxinggminng120,zhhiweei120;flooat shoouruu1,xxiaooshii1;couut请输输入要修修

28、改员工工的工号号:gg;i=00;whiile(g!=a1i.gonnghaao)i+;g=ii;forr(i=0;ii!=gg;i+)a22i.goonghhao=a1i.gonnghaao;sttrcppy(aa2ii.zzhiwwei,a1i.zhiiweii);sttrcppy(aa2ii.xxinggminng,aa1ii.xxinggminng);iff(sttrcmmp(aa1ii.zzhiwwei,技术术员)=00)aa2ii.xxiaooshii=a11i.xiiaosshi;a22i.shhourru=aa1ii.sshouuru;couut请重重新输入入工号:ggongg

29、haoo1;a2i.gonnghaao=ggongghaoo1;couut请重重新输入入姓名:xxinggminng1;strrcpyy(a22i.xiingmmingg,xiingmmingg1);couut请重重新输入入职位:zzhiwwei11;strrcpyy(a22i.zhhiweei,zzhiwwei11);if(strrcmpp(zhhiweei1,技术术员)=00)coout请请重新输输入工作作小时数数:xiaaoshhi1;a22i.xiiaosshi=xiaaoshhi1;couut请重重新输入入月收入入:sshouuru11;a2i.shoouruu=shhourru1;

30、if(strrcmpp(a22i.zhhiweei,技术员员)=0)couut工号号:a22i.goonghhao 姓名名:a22i.xiingmmingg 职职位:aa2ii.zzhiwwei 工作小小时: a2i.xiaaoshhi 工资:a2i.shoouruu enndl;elsseccoutt工号:a2i.gonnghaao 姓名:a2i.xinngmiing 职位位:a22i.zhhiweei 工资:a2i.shoouruu enndl;i=ii+1;forr(i;ixx;i+)a22i.goonghhao=a1i.gonnghaao;sttrcppy(aa2ii.zzhiwwei

31、,a1i.zhiiweii);sttrcppy(aa2ii.xxinggminng,aa1ii.xxinggminng);iff(sttrcmmp(aa2ii.zzhiwwei,技术术员)=00)aa2ii.xxiaooshii=a11i.xiiaosshi;a22i.shhourru=aa1ii.sshouuru;fsttreaam ccun11;i=00;cunn1.oopenn(保保存人员员.txxt,ioss:ttrunnc);if(!cuun1)coout cannnott oppen filleenndl;whiile(ixx)cuun1a22i.goonghhaoenndl;cu

32、un1a22i.xiingmminggeendll;cuun1a22i.zhhiweeienddl;iff(sttrcmmp(aa2ii.zzhiwwei,技术术员)=00)ccun11aa2ii.xxiaooshiieendll;cuun1a22i.shhourruenddl;i+;cunn.cllosee();(3) “emmplooyeee.cppp”#inccluddeeemplloyeee.hh#inccludde#inccludde#inccludde#inccludde#inccludde#inccluddedoubble empployyee:geernoo()couut请输输

33、入工号号nnumbber;retturnn nuumbeer;charr *eemplloyeee:gettnamme()couut请输输入姓名名nnamee;retturnn naame;charr *eemplloyeee:gerrposst()couut请输输入职位位ppostt;retturnn poost;/doubble Tecchniiciaan:payy()inccomee=300*1000*hhourr;retturnn inncomme;doubble Tecchniiciaan:Sett_hoour() couuthhourr;retturnn hoour;/voidd

34、Saalemman:saale()/当当月销售售额couut请输输入当月月销售额额ssalaary;doubble Sallemaan:payy()inccomee=saalarry*00.044;retturnn inncomme;/doubble Mannageer:payy() inccomee=80000; retturnn inncomme;/doubble Sallesmmanaagerr:ppay()inncomme=550000+saalarry*00.055; rretuurn inccomee;(3)” emmplooyeee.cppp”#inccluddeeemplloy

35、eee.hh#inccludde#inccludde#inccludde#inccludde#inccludde#inccluddedoubble empployyee:geernoo()couut请输输入工号号nnumbber;retturnn nuumbeer;charr *eemplloyeee:gettnamme()couut请输输入姓名名nnamee;retturnn naame;charr *eemplloyeee:gerrposst()couut请输输入职位位ppostt;retturnn poost;/doubble Tecchniiciaan:payy()inccomee=3

36、00*1000*hhourr;retturnn inncomme;doubble Tecchniiciaan:Sett_hoour() couuthhourr;retturnn hoour;/voidd Saalemman:saale()/当当月销售售额couut请输输入当月月销售额额ssalaary;doubble Sallemaan:payy()inccomee=saalarry*00.044;retturnn inncomme;/doubble Mannageer:payy() inccomee=80000; retturnn inncomme;/doubble Sallesmmanaa

37、gerr:ppay()inncomme=550000+saalarry*00.055; rretuurn inccomee;(4)”gzggl.ccpp”#inccluddeeemplloyeee.hh#inccludde#inccludde#inccludde#inccludde#inccludde#inccludde #inccludde int InttputtMennu();voidd reeadmmenuu();int delletmmenuu();int xiuugaiimennu();int Shoowmeenu();int ai;exteern intt k;voidd maa

38、in()Shoowmeenu();int Shoowmeenu()intt nuu;nu=reaadreenshhu();whiile(1) cooutenndl; coout 小型型公司工工资管理理系统 enddl;coout eendll;coout 请选选择您所所需要的的操作: enddl;coout 数据据录入: 1,并按回回车键enddl;coout 删除除数据: 2,并按回回车键enddl;coout 修改改数据: 3,并按回回车键enddl;coout 读入入数据: 4,并按回回车键enddl;coout 退出出系统: 5,并按回回车键enddl;coout eendll;coo

39、utenndlenndlenndl;cooutai;swwitcch(aai) caase 1:InttputtMennu();brreakk;caase 2:ddeleetmeenu();bbreaak;caase 3:xxiuggaimmenuu();breeak;caase 4:rreaddmennu();brreakk;caase 5:rretuurn 0;bbreaak;deefauult:couut你的的选择出出错了!请重重新输入入吧!eendll;int delletmmenuu()whiile(1)innt rr;r=reaadreenshhu();cooutenndl; co

40、out 小型型公司工工资管理理系统 enddl;coout eendll;coout 请选选择您所所需要的的操作: enddl;coout 按工工号删除除: 1,并按回回车键enddl;coout 按姓姓名删除除: 2,并并按回车车键enddl;coout 返回回上一层层: 3,并按回回车键enddl;coout eendll;cooutenndlenndlenndl;ccouttai;swwitcch(aai) caase 1:delletggon(r);breeak;caase 2:ddeleetnaame(r);breeak;caase 3:rretuurn 0;bbreaak;deef

41、auult:couut你的的选择出出错了!请重重新输入入吧!eendll;voidd reeadmmenuu()intt r;r=rreaddrennshuu();reaad(rr);int xiuugaiimennu() whiile(1)innt rr;r=reaadreenshhu();cooutenndl; coout 小型型公司工工资管理理系统 enddl;coout eendll;coout 请选选择您所所需要的的操作: enddl;coout 修改改工号: 1,并并按回车车键enddl;coout 修改改姓名: 2,并按回回车键enddl;coout 修改改职位: 3,并按回回车

42、键enddl;coout 修改改全部: 4,并按回回车键enddl;coout 返回回上一层层: 5,并按回回车键enddl;coout eendll;cooutenndlenndlenndl;ccouttai;swwitcch(aai) /casse 11:delletggon(r);breeak;/casse 22:deelettnamme(rr);bbreaak;caase 4:xxiuggai_alll(r);brreakk;caase 5:rretuurn 0;bbreaak;deefauult:couut你的的选择出出错了!请重重新输入入吧!eendll;int InttputtMennu() couut 小型公公司工资资管理系系统enddl; couut enndl; couut 请选选择您所所需要的的操作 enddl; couut 经理理数据输输入 : 1,并按回回车键 enddl; couut 技术术员数据据输入 : 2,并并

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论