人员信息管理系统_第1页
人员信息管理系统_第2页
人员信息管理系统_第3页
人员信息管理系统_第4页
人员信息管理系统_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

1、C+课程设设计题目:人人员信息息管理系系统学生姓名名:学号:专业班级级:同组人员员:指导老师师:设计时间间:指导老师师意见: 评定成绩绩: 签名: 日期期:C+课课程设计计实验报报告人员员信息管管理系统统一:系统统要求分分析1:功能能需求(1)人人员信息息基本管管理,包包括人员员信息的的录入、修改和和删除;(2)能能够自动动设置员员工的编编号,即即每增加加一位新新员工,编编号增一一;(3)能能够分别别对不同同级别的的员工(如如经理、技术人人员、推推销人员员等)按按照不同同的公式式计算其其工资收收入;(4)能能够将人人员信息息保存到到磁盘上上,以便便程序下下次运行行时使用用;(5)具具有一定定的

2、排错错功能,如如当用户户输入错错误数据据时提示示用户;(6)能能够实现现一定程程度的查查询和统统计功能能。(7)其其他你能能想到并并对系统统有用的的功能。在实现程程序功能能的基础础上,尽尽量运用用所学知知识,改改进程序序实现方方法,提提高程序序的可读读性、模模块性、可扩展展性、可可重用性性和健壮壮性。工资计算算公式:经理 :固定为为80000技术人员员:工作作时间*每小时时酬金(1100RRMB)销售经理理:1%提成+固定工工资(550000RMBB)推销员 :44%提成成二:系统统总体设设计1:系统统功能框框架设计计登陆界面输入登陆密码liu进入功能选择菜单7:退出5:删除4:修改3:查找2

3、:显示1:录入 进行操作处理操作结果自动存入txt文件中,再循环进入主菜单三:系统统详细设设计1:设计思思路使用面向向对象的的程序设设计思想想进行分分析,整整个系统统涉及两两大类信信息和操操作,公公司,人人员。所所以系统统主要涉涉及两个个大类:公司类类bussineess、人员类类perrsonn。系统统的总体体框架就就是公司司类,人人员类的的定义;主函数数中定义义一个公公司对象象,循环环显示主主菜单并并根据用用户选择择调用公公司类的的相应方方法(成成员函数数)。(1)公公司类bbusiinesss:考考虑系统统操作的的人员信信息的数数量具有有不确定定性,所所以考虑虑使用链链表保存存、处理理人

4、员信信息。公公司类包包含:所所有人员员信息的的一个不不带头结结点的链链表(作作为数据据成员)及及可以对对人员信信息进行行增,删删,改,查查询经营营信息,基基础数据据设置,数数据存盘盘,数据据装入等等操作的的相关模模块(wwritte,bbuilld,ssearrch,reppairr,deelette,llistt)作为为成员函函数。(2)人人员类ppersson:所有人人员都具具有的公公共信息息及操作作可以使使用人员员类进行行描述。由于系系统具有有4类人人员且44类人员员数据,操操作有所所不同,如如销售员员包含销销售额,而而兼职技技术人员员包含工工作小时时数且计计算工资资的方法法不同,所所以

5、应当当为4类类人员创创建相应应的peersoon类的的派生类类。(3)为为了使公公司类可可以方便便处理人人员信息息,可以以考虑将将公司类类确定为为人员类类的友元元类或者者人员类类提供公公共的方方法以便便公司类类进行操操作。为为了公司司类可以以用共同同方法操操作人员员类,可可以将人人员类的的方法确确定为虚虚函数。2:功能能模块设设计voidd wrritee()新增将向要新新增的人人员通过过文件指指令ofsttreaam mmyfiile(f11.txxt,ioss : biinarry|iios : atee); myffilee.wrritee(ccharr*)&p,ssizeeof p);

6、myfiile.cloose(); 将信息自自动存入入txtt文档中中。voidd seearcch()查找找通过读取取源文件件内容,再利用判判断语句句if(nnumbber=p.nummberr)判断是否否输入的的序号与与存档内内容序号号相同,相相同则输输出。voidd deelette()删除除先查找出出要删除除的人员员信息,再通过oofsttreaam ffilee2(f1.txtt,iios : binnaryy|ioos : oout);创建建空白文文件覆盖盖要删除除的人员员信息。voidd shhow()显示用whiile判判断语句句打印出出所有人人员信息息。voidd reepa

7、iir()修改改利用offstrreamm h11(ff2.ttxt,ioos : bbinaary|ioss : ouut);覆盖要要修改的的人员信信息。错误判断断四:系统统源代码码#inccludde#inccludde#inccludde#inccluddeclasss ppersson pubblicc : chaar nnamee200,ppostt200,hhourr200; intt agge,nnumbber ; ;classs bbusiinesss :pubblicc peersoon pubblicc : intt tiime ; ; /经理理(一次次派生类类)class

8、s mmgr : ppubllic perrsonn pubblicc: intt moonthhpayy; mgrr : mggr() moonthhpayy=80000 ; voiid oout() couutnnumbber ; couutnnamee ; couutaage ; couut该职职工的月月薪为:monnthppayenndl; voiid iin() coout编编号:nnumbber 姓名名:naame 年龄龄:agge 职称:经理理 月薪薪:moonthhpayyeendll; ;/技术术人员classs ttechhnicciann :ppubllic perrso

9、nn pubblicc: intt hoourllyRaate ; /每每小时酬酬金 intt woorkHHourrs ; /当当月工作作时数 intt paay; tecchniiciaan : ttechhnicciann() hoourllyRaate=1000 ; ; virrtuaal vvoidd inn() coout编编号:nnumbber 姓名名:naame 年龄龄:agge 职称:技术术人员 月月薪:ppayenndl ; voiid oout() cooutnummberr ; cooutnamme ; cooutworrkHoourss ; cooutagee ; p

10、aay=hhourrlyRRatee*woorkHHourrs ; coout该该职工的的月薪为为:paayenddl ; ; /销售售经理classs sselll :ppubllic bussineess pubblicc : intt phhpayy,moonthhpayy ; selll : sselll() phhpayy=1,monnthppay=50000 ; voiid iin() coout编编号:nnumbber 姓名名:naame 销售售额:ttimee 年年龄:aage 职称称:销销售经理理 月薪:payy()enndl ; intt paay() reeturrn(p

11、phpaay*ttimee+moonthhpayy); voiid oout() cooutnummberr ; cooutnamme ; coouttimme ; cooutagee ; coout职职工的月月薪为:payy()enndl ; ;/推销销员 classs bbagmman :puubliic bbusiinesss pubblicc : intt phhpayy ; baggmann : baagmaan() phhpayy=4 ; voiid iin() coout编编号:nnumbber 姓名名:naame 销售售额:ttimee 年年龄:aage 职称称:推推销员 年薪

12、薪:paay()eendll ; intt paay() reeturrn(pphpaay*ttimee); voiid oout() couutnnumbber ; couutnnamee ; couutttimee ; couutaage ; couut该职职工的月月薪为:payy()enndl ; ;/*输输入函数数voidd wrritee1() mggr pp ; p.oout();ofsttreaam mmyfiile(f11.txxt,ioss : biinarry|iios : atee); /与与ioss:aapp|ioss:oout)均可 myffilee.wrritee(

13、ccharr*)&p,ssizeeof p); myffilee.cllosee(); voidd wrritee2() tecchniiciaan pp ; p.oout(); ofsstreeam myffilee(ff2.ttxt,ioos : bbinaary|ioss : atte); /与与ioss:aapp|ioss:oout)均可 myffilee.wrritee(ccharr*)&p,ssizeeof p); myffilee.cllosee();voidd wrritee3() selll pp ; p.oout(); ofsstreeam myffilee(ff6.ttx

14、t,ioos : bbinaary|ioss : atte); /与与ioss:aapp|ioss:oout)均可 myffilee.wrritee(ccharr*)&p,ssizeeof p); myffilee.cllosee();voidd wrritee4() baggmann p ; ofsstreeam myffilee(ff7.ttxt,ioos : bbinaary|ioss : atte); /与与ioss:aapp|ioss:oout)均可 p.oout(); myffilee.wrritee(ccharr*)&p,ssizeeof p); myffilee.cllosee

15、();voidd buuildd() couutenddl ; couut *请请选择职职工的信信息* eendll ; couut * 1.经理 * eendll ; couut * 2.技术人人员 * enddl ; couut * 3.销售经经理 * enddl ; couut * 4.推销员员 * enndl ; couut * cch ; whiile(ch!=NN&ch!=nn) swwitcch(cch) ccasee 11 : wwritte1(); bbreaak ; ccasee 22 : wwritte2(); bbreaak ; ccasee 33 : wwritte3

16、(); bbreaak ; ccasee 44 : wwritte4(); bbreaak ; ddefaaultt : ccouttERRROR!enndl ;bbreaak ; cooutch ; iff(chh=Y|chh=y) ccoutt请输入入144:chh ; /*显显示函数数voidd shhow11() ifsstreeam myffilee(ff1.ttxt,ioos : bbinaary|ioss : ouut|iios : in); mgrr p ; myffilee.reead(chhar*)&pp,siizeoof pp); whiile(!myyfille.eeo

17、f() pp.inn(); mmyfiile.reaad(chaar*)&p,sizzeoff p); myyfille.cclosse();voidd shhow22() iffstrreamm myyfille(f2.txtt,iios : binnaryy|ioos : oout|ioss : inn); teechnniciian p; myyfille.rreadd(ccharr*)&p,ssizeeof p); whiile(!myyfille.eeof() p.iin(); mmyfiile.reaad(chaar*)&p,sizzeoff p); myffilee.cllose

18、e();voidd shhow33() iffstrreamm myyfille(f6.txtt,iios : binnaryy|ioos : oout|ioss : inn); seell p ; myyfille.rreadd(ccharr*)&p,ssizeeof p); whiile(!myyfille.eeof() p.iin(); mmyfiile.reaad(chaar*)&p,sizzeoff p); myffilee.cllosee();voidd shhow44() iffstrreamm myyfille(f7.txtt,iios : binnaryy|ioos : oo

19、ut|ioss : inn); baagmaan pp ; myyfille.rreadd(ccharr*)&p,ssizeeof p); whiile(!myyfille.eeof() p.iin(); mmyfiile.reaad(chaar*)&p,sizzeoff p); myffilee.cllosee();voidd shhow00() shoow1(); shoow2();showw3();showw4(); voiid sshoww() ccoutt *你你正在显显示*enddl ;ccoutt * 0.全全显 *enddl ; ccoutt * 1.经经理 *enddl ;

20、ccoutt * 2.技技术人员员 *enndl ; ccoutt * 3.销销售经理理 *enndl ; ccoutt * 4.推推销员 *eendll ; ccoutt *c ; whhilee(c!=NN&c!=n) swiitchh(c) ccasee 11 : shoow1(); breeak ; ccasee 22 : shoow2(); breeak ; ccasee 33 : shoow3(); breeak ; ccasee 44 : shoow4(); breeak ; caase 0 : shoow0(); breeak ; ddefaaultt : couutERRRO

21、RR!eendll ; breeak ; coout是是否继续续显示(Y/NN)?c ; iif(cc=Y|c=yy) couut请选选择你要要显示的的职工类类:cc ; /*查查找函数数 voiid ssearrch11() innt mm=1; couut请输输入你要要查找的的编号:nnumbber ; iifsttreaam mmyfiile(f11.txxt,ioss : biinarry|iios : outt|ioos : iin); mmgr p ; mmyfiile.reaad(chaar*)&p,sizzeoff p); whhilee(!mmyfiile.eoff() ii

22、f(nnumbber=p.nummberr) p.iin(); myffilee.cllosee();m=00; myffilee.reead(chhar*)&pp,siizeoof pp); if(m) couut查无无此人!enddl ; voiid ssearrch22() innt mm=1; ccoutt请输入入你要查查找的编编号:nuumbeer ; iifsttreaam mmyfiile(f22.txxt,ioss : biinarry|iios : outt|ioos : iin); ttechhnicciann p ; mmyfiile.reaad(chaar*)&p,si

23、zzeoff p); whhilee(!mmyfiile.eoff() iif(nnumbber=p.nummberr) p.iin(); myffilee.cllosee();m=00; mmyfiile.reaad(chaar*)&p,sizzeoff p); if(m)coout查查无此人人!enndl ; voiid ssearrch33() iint m=11; ccoutt请输入入你要查查找的编编号:nuumbeer ; iifsttreaam mmyfiile(f66.txxt,ioss : biinarry|iios : outt|ioos : iin); sselll p ;

24、 mmyfiile.reaad(chaar*)&p,sizzeoff p); whhilee(!mmyfiile.eoff() iif(nnumbber=p.nummberr) p.iin(); myffilee.cllosee();m=00; mmyfiile.reaad(chaar*)&p,sizzeoff p); iff(m)ccoutt查无此此人!eendll ; voiid ssearrch44() innt mm=1; ccoutt请输入入你要查查找的编编号:nuumbeer ; iifsttreaam mmyfiile(f77.txxt,ioss : biinarry|iios

25、: outt|ioos : iin); bbagmman p ; mmyfiile.reaad(chaar*)&p,sizzeoff p); whhilee(!mmyfiile.eoff() iif(nnumbber=p.nummberr) p.iin(); myyfille.cclosse();m=00; mmyfiile.reaad(chaar*)&p,sizzeoff p); iff(m)ccoutt查无此此人!eendll ; voiid ssearrch() ccoutt *你正正在查找找*enddl ; ccoutt * 1.经经理 *enddl ; ccoutt * 2.技技术人

26、员员 *enndl ; ccoutt * 3.销销售经理理 *enndl ; ccoutt * 4.推推销员 *eendll ; ccoutt *c ; whhilee(c!=NN&c!=n) swiitchh(c) ccasee 11 : seaarchh1(); brreakk ; caase 2 : seaarchh2(); brreakk ; caase 3 : seaarchh3(); brreakk ; caase 4 : seaarchh4(); brreakk ; deefauult : couutERRRORR!eendll ;breeak ; couutcc ; iif(c

27、c=Y|c=yy) couut请选选你的职职称类型型:c ; /*修修改函数数 voiid rrepaair11(vooid) iint numm,i=0,kk=0 ; mmgr*p1=neww mggr550; ccouttnuum ; iifsttreaam hh1(f1.txtt,iios : binnaryy|ioos : iin); hh1.rreadd(ccharr*)&p1i,sizzeoff p11i); whhilee(!hh1.eeof() i+; h1.reaad(chaar*)&p11i,siizeoof pp1ii); hh1.cclosse(); kk=i ; fo

28、or(ii=0;ikk;i+) iif(nnum=p11i.nuumbeer) p1i.outt(); couut修改改完毕!enddl ; offstrreamm h22(ff1.ttxt,ioos : bbinaary|ioss : ouut); foor(ii=0;ikk;i+) hh2.wwritte(chaar*)&p11i,siizeoof pp1ii); h22.cllosee(); deelettep1 ; voiid rrepaair22(vooid) iint numm,i=0,kk=0 ; ttechhnicciann*p22=neew ttechhnicciann500

29、; ccouttnuum ; iifsttreaam hh2(f2.txtt,iios : binnaryy|ioos : iin); h2.reaad(chaar*)&p22i,siizeoof pp2ii); whhilee(!hh2.eeof() ii+; hh2.rreadd(ccharr*)&p2i,sizzeoff p22i); h22.cllosee(); k=i ; foor(ii=0;ikk;i+) iff(nuum=p2i.nummberr) p2i.outt(); couut修改改完毕!enddl ; offstrreamm h11(ff2.ttxt,ioos : bbi

30、naary|ioss : ouut); foor(ii=0;ikk;i+) hh1.wwritte(chaar*)&p22i,siizeoof pp2ii); h1.cloose(); delleteepp2 ; voiid rrepaair33(vooid) iint numm,i=0,kk=0 ; sselll*p66=neew sselll500; ccouttnuum ; ffstrreamm h66(ff6.ttxt,ioos : bbinaary|ioss : ouut|iios : in); hh6.rreadd(ccharr*)&p6i,sizzeoff p66i); whhi

31、lee(!hh6.eeof() ii+; hh6.rreadd(ccharr*)&p6i,sizzeoff p66i); k=i ; h66.cllosee(); foor(ii=0;ikk;i+) iif(nnum=p66i.nuumbeer) p6i.in(); couut修改改完毕!enddl ; offstrreamm h11(ff6.ttxt,ioos : bbinaary|ioss : ouut); foor(ii=0;ikk;i+) hh1.wwritte(chaar*)&p66i,siizeoof pp6ii); h11.cllosee(); deelettep6 ; voii

32、d rrepaair44(vooid) iint numm,i=0,kk=0 ; bbagmman*p7=neww baagmaan550; ccouttnuum ; ffstrreamm h77(ff7.ttxt,ioos : bbinaary|ioss : ouut|iios : in); hh7.rreadd(ccharr*)&p7i,sizzeoff p77i); whhilee(!hh7.eeof() i+; h7.reaad(chaar*)&p77i,siizeoof pp7ii); k=i ; h77.cllosee(); foor(ii=0;ikk;i+) iff(nuum=p

33、7i.nummberr) p7i.outt(); couut修改改完毕!enddl ; offstrreamm h11(ff7.ttxt,ioos : bbinaary|ioss : ouut); foor(ii=0;ikk;i+) h1.wriite(chhar*)&pp7ii,ssizeeof p7i); h11.cllosee(); deelettep7 ; voiid rrepaair() ccoutt *你正正在修改改*enddl ; ccoutt * 1.经经理 *enddl ; ccoutt * 2.技技术人员员 *enndl ; ccoutt * 3.销销售经理理 *enndl

34、 ; ccoutt * 4.推推销员 *eendll ; ccoutt *c ; whhilee(c!=NN&c!=n) swiitchh(c) casse 1 : reppairr1(); breeak ; casse 2 : reppairr2(); breeak ; casse 3 : reppairr3(); breeak ; casse 4 : reppairr4(); breeak ; deffaullt : couutERRRORR!eendll ;breeak ; couut是否否继续修修改(YY/N)?cc ; iif(cc=Y|c=yy) couut请输输入你要要修改的的职

35、称类类型:cc ; voiid ddeleete11() iint i=00,nuumbeer ; iifsttreaam mmyfiile(f11.txxt,ioss : biinarry|iios : in); mmgr p330; mmyfiile.reaad(chaar*)(p+i),sizzeoff*p); coout请请输入你你要删除除的对象象的编号号:nummberr ; whhilee(!mmyfiile.eoff() iif(nnumbber=pi.nummberr) i-; ii+; mmyfiile.reaad(chaar*)(p+i),sizzeoff*p); innt

36、 kk=i ; myyfille.cclosse(); offstrreamm fiile22(ff1.ttxt,ioos : bbinaary|ioss : ouut); foor(ii=0;ikk;i+) ffilee2.wwritte(chaar*)(p+i),sizzeoff*p); voiid ddeleete22() innt ii=0,nummberr ; ifsstreeam myffilee(ff2.ttxt,ioos : bbinaary|ioss : inn); tecchniiciaan pp300; myffilee.reead(chhar*)(pp+i),siize

37、oof*pp); couut请输输入你要要删除的的对象的的编号:nnumbber ; whhilee(!mmyfiile.eoff() iif(nnumbber=pi.nummberr) i-; i+; myffilee.reead(chhar*)(pp+i),siizeoof*pp); iint k=ii ; mmyfiile.cloose(); oofsttreaam ffilee2(f2.txtt,iios : binnaryy|ioos : oout); foor(ii=0;ikk;i+) ffilee2.wwritte(chaar*)(p+i),sizzeoff*p); voiid

38、ddeleete33() intt i=0,nnumbber ; iifsttreaam mmyfiile(f66.txxt,ioss : biinarry|iios : in); sselll p30; mmyfiile.reaad(chaar*)(p+i),sizzeoff*p); ccoutt请输入入你要删删除的对对象的编编号:nuumbeer ; whhilee(!mmyfiile.eoff() iif(nnumbber=pi.nummberr) i-; ii+; mmyfiile.reaad(chaar*)(p+i),sizzeoff*p); innt kk=i ; myyfille

39、.cclosse(); offstrreamm fiile22(ff6.ttxt,ioos : bbinaary|ioss : ouut); foor(ii=0;ikk;i+) ffilee2.wwritte(chaar*)(p+i),sizzeoff*p); voiid ddeleete44() innt ii=0,nummberr ; ifsstreeam myffilee(ff7.ttxt,ioos : bbinaary|ioss : inn); baggmann p30; myffilee.reead(chhar*)(pp+i),siizeoof*pp); couut请输输入你要要删除的的对象的的编号:nnumbber ; whhilee(!mmyfiile.eoff() iif(nnumbber=pi.nummberr) i-; ii+; mmyfiile.reaad(chaar*)(p+i),sizzeoff*p); innt kk=i ; myyfille.cclosse(); offstrreamm fiile22(ff7.ttxt,ioos : bbinaary|ioss : ouut); foor(i

温馨提示

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

评论

0/150

提交评论