南邮通达-简单的工资管理系统_第1页
南邮通达-简单的工资管理系统_第2页
南邮通达-简单的工资管理系统_第3页
南邮通达-简单的工资管理系统_第4页
南邮通达-简单的工资管理系统_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

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

文档简介

程序设计报报告(20113/220144学年年第11学期)题目目:模模拟工资资管理系系统专业:计计算机科科学与技技术学生姓名::班级学号::指导教师::指导单位::南京京邮电大大学通达达学院日期:220133年112月9日评分细则评分项优秀良好中等差遵守机房规规章制度度上机时的表表现学习态度程序准备情情况程序设计能能力团队合作精精神课题功能实实现情况况算法设计合合理性用户界面设设计报告书写认认真程度度内容详实程程度文字表达熟熟练程度度回答问题准准确度简短评评语教师签名::年月日评分等级备注评分等级有有五种::优秀、良良好、中中等、及及格、不不及格模拟工资管管理系统统一课题内内容和要要求工资资管理系系统是一一个单位位最基本本的一项项财务管管理,该该系统要要求实现现查找,修修改,删删除,统统计,排排序等。所所以帐务务数据都都要利用用文件系系统保存存,以备备系统下下次运行行时使用用。通过过此课题题,熟练练掌握文文件,数数组,指指针的各各项操作作,以及及一些基基本算法法思想的的应用。基本要求求:管理员::以密码系统统登录录入员工信信息具体体工资,计计算相应应的税金金(计算算规则参参见最新新公布的的政策)查询并显示示所有员员工具体体信息显示统计信信息:员员工数目目,工资资总数和和税金总总数按照指定条条件查询询增减具体员员工记录录税金政策基基本是不不同收入入等级的的工资使使用不同同的比例例收取税税金。类类似于下下表:工资税金0~150000%((超出部部分)1500~~2500010%%(超出出部分))2500~~3500015%%(超出出部分))3500~~5000020%%(超出出部分))5000~~100000300%(超超出部分分)100000~40%%(超出出部分))员工:以工号为登登录IDD,密码码自己设设定;可以查询本本人的相相关信息息;系统提供指指定时间间间隔的的查询功功能。二需求求分析工资管理系系统的功功能框架架图如图图1所示。添加添加查找修改删除显示排序显示退出工资管理系统保存图一(功能能框架图图)根据工资管管理系统统的要求求,设计计合适的的数据结结构。选择文件存存储格式式(文本本或是二二进制)和和文件名名。采用自顶向向下的设设计方法法,设计计系统的的总体模模块组成成和数据据结构。对于每项操操作,设设计一个个函数(方方法、子子模块)进进行实现现,要明明确定义义函数类类型。根据设计结结果分布布开发实实现各模模块,最最后进行行总体集集成。三、概要设设计1主要结结构体classswoorkeer{publiic:workeer()){}voidshoow());///职工信信息显示示~workker((){}doublleGGetTTax();;///获获取缴税税ddoubbleGettAcccumPPay();;///获获取实发发工资frienndcclasssWWorkkerLListt;privaate::strinngnnum,,namme,ssex,,eduu,adddreess,,tell;///姓名,性性别,教教育程度度,住址址,电话话intaage,,sallaryy,A;;//年年龄,薪薪水,税税金};classsWoorkeerLiist{privaate::workeerww[N]];intNNUM;;//用用来计算算职工数数目inttcoountt;///用来暂暂时记录录当前操操作第几几个职工工publiic:voidaddd();;//职职工信息息录入voidsorrt());///职工信信息排序序voidseaarchh();;//职职工信息息查找voiddelle());///职工信信息删除除voidmoddifyy();;//职职工信息息修改vvoiddsaave(();///职工工信息以以文件形形式保存存voidshoowwoorkeer());///显示职职工信息息在屏幕幕上voidreaad());WorkeerLiist((){NUM=00;countt=0;;}};2主要函函数流程程图(1)登登录函数数(如如图二所所示)开始开始管理员用户管理员用户请输入密码请输入密码请输入密码请输入密码NYYYN能否登录能否登录能否登录能否登录进入系统进入系统图二(登录录函数图图)(2)职工工信息录录入如图三三所示学历添加新员工信息学历添加新员工信息请输入要添加的员工人数姓名工号年龄工资电话地址性别图三(录录入函数数)(3)职工工信息查查找(如如图四所所示)查询员工查询员工请选择查询方式请选择查询方式学历工资姓名工号学历工资姓名工号请输入待查询的员工的工资请输入待查询的员工的姓名请输入待查询的员工的学历请输入待查询的员工的工号请输入待查询的员工的工资请输入待查询的员工的姓名请输入待查询的员工的学历请输入待查询的员工的工号所查询的员工信息所查询的员工信息按任意键返回按任意键返回图四(查查找函数数)(4)职工工信息统统计(如图图五所示示)打印员工信息打印员工信息所以员工信息列表按任意键返回图图五(统统计函数数)(5)职工工信息修修改(如如图六所所示)请输入数字2请输入数字21学历2电话3姓名4工号5工资6年龄7地址8性别输入您要修改的学历输入您要修改的的电话输入您要修改的姓名输入您要修改的工号输入您要修改的工资输入您要修改的年龄输入您要修改的地址输入您要修改的性别修改信息已保存现返回主菜单图图六(修修改函数数)(6)职工工信息删删除(如如图七所所示)请输入要删除职工的工号请输入数字3显示所删除职工信息确认请输入Y返回菜单请输入N图七(删请输入要删除职工的工号请输入数字3显示所删除职工信息确认请输入Y返回菜单请输入N请输入数字编号职工信息保存(7)职工工信息保保存(如如图八所所示)请输入数字编号职工信息保存文件正在保存。。请稍候文件正在保存。。请稍候数据保存成功系统返回主菜单图八(8)职工工信息排排序(如如图九所所示)职工信息排序按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)职工信息排序按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)按工号排序(升序)请选择数字编号请选择数字编号图九四.源代码码#inclludee<ioostrreamm>#inclludee<sttrinng>#inclludee<fsstreeam>>#inclludee<sstdllib..h>#inclludee<ccstddlibb>#inclludee"coonioo.h""usinggnaamesspaccesstd;;#defiineN1100///N作作为最大大职工总总数intff=0;;//ff作为开开关strinngpp;///p作为为接收菜菜单选项项的字符符串inteerroor=00;voidmennu());///显示菜菜单classswoorkeer{publiic:workeer()){}voidshoow());///职工信信息显示示~workker((){}doublleGGetTTax();;///获获取缴税税ddoubbleGettAcccumPPay();;///获获取实发发工资frienndcclasssWWorkkerLListt;privaate::strinngnnum,,namme,ssex,,eduu,adddreess,,tell;///姓名,性性别,教教育程度度,住址址,电话话intaage,,sallaryy,A;;//年年龄,薪薪水,税税金};classsWoorkeerLiist{privaate::workeerww[N]];intNNUM;;//用用来计算算职工数数目inttcoountt;///用来暂暂时记录录当前操操作第几几个职工工publiic:voidaddd();;//职职工信息息录入voidsorrt());///职工信信息排序序voidseaarchh();;//职职工信息息查找voiddelle());///职工信信息删除除voidmoddifyy();;//职职工信息息修改vvoiddsaave(();///职工工信息以以文件形形式保存存voidshoowwoorkeer());///显示职职工信息息在屏幕幕上voidreaad());WorkeerLiist((){NUM=00;countt=0;;}};doublleworrkerr::GGetTTax()///缴税税{iff(saalarry<==15000){reeturrnAA==00;}ellseiff(saalarry<==25000){reeturrnAA=(ssalaary--15000)**10//1000;}ellseiff(saalarry<==35000){reeturrnAA=(ssalaary--25000)**15//1000+1000;}ellseiff(saalarry<==50000){reeturrnAA=(ssalaary--35000)**20//1000+1000+1150;;}ellseiff(saalarry<==100000)){reeturrnAA=(ssalaary--50000)**30//1000+1000+1150++3000;}ellseiff(saalarry>1100000){reeturrnAA=(ssalaary--100000))*400/1000+1100++1500+3000+115000;}}doubllewworkker:::GeetAcccummPayy()){returrnssalaary--A;}//登陆函函数voidloggin((){sysstemm("ccls"");couut<<<"\nn\n******************************************************************"<<<enddl;couut<<<"***请选择择您所需需要的模模式***"<<<enndl;;couut<<<"***1..管理员员模式***"<<<enddl;couut<<<"***2..用户模模式***"<<<enndl;;couut<<<"*****************************************************************""<<eendll;}voidmennu()){cout<<<enndl;;cout<<<"***********************************************************************************"<<<enndl;;cout<<<"******"<<<enndl;;cout<<<"***====欢迎使使用南京京邮电大大学职工工工资管管理系统统====***"<<<enndl;;cout<<<"******"<<<enndl;;cout<<<"***11.职工工信息添添加***"<<<enndl;;cout<<<"***22.职工工信息修修改***"<<<enndl;;cout<<<"***33.职工工信息删删除***"<<<enndl;;cout<<<"***44.职工工信息排排序***"<<<enndl;;cout<<<"***55.职工工信息查查找***"<<<enndl;;cout<<<"***66.职工工信息显显示***"<<<enndl;;cout<<<"***77.职工工信息保保存***"<<<enndl;;ccoutt<<""**8.职职工信息息查看**""<<eendll;cout<<<"***00.退出出**""<<eendll;cout<<<"******"<<<enndl;;cout<<<"***********************************************************************************"<<<enndl;;cout<<<enndl;;}voidmennu1((){cout<<<enndl;;cout<<<"***********************************************************************************"<<<enndl;;cout<<<"******"<<<enndl;;cout<<<"***====欢迎使使用南京京邮电大大学职工工工资管管理系统统====***"<<<enndl;;cout<<<"******"<<<enndl;;cout<<<"***11.职工工信息查查找***"<<<enndl;;cout<<<"***00.退出出**""<<eendll;cout<<<"******"<<<enndl;;cout<<<"***********************************************************************************"<<<enndl;;cout<<<enndl;;}voiddommainn()///主菜菜单函数数实现{charpa[[20]];intaabcdd;charbefforee;WorkeerLiistwl;;intaa;cout<<<"请请输入选选择:"";cin>>>a;switcch(aa){case1:cout<<<"请请输入密密码:"";intjj;for((j==0;jj<100;j+++){befforee=geetchh();;if(bbefoore===133){pa[j]]='\\0';;breakk;}if(bbefoore===8)){bbefoore==gettchaar());}elsee{ppa[jj]=bbefoore;;cout<<<'**';}}if((strrcmpp(paa,"1123"")===0|||strrcmpp(paa,"4456"")===0){couut<<<""\n登登录成功功,祝您您工作顺顺利,心心情愉快快!"<<<enndl;;}elsse{do{errorr++;;if(errrorr==33){coout<<<enndl;;coout<<<"\\n*******************************************************************"<<<enddl;coout<<<"***密码码错误,系系统自动动退出,请请稍后重重新登录录***"<<<enndl;;couut<<<"*******************************************************************"<<<enddl;ffor((abccd=11;abbcd<<=100000000000;aabcdd++)){}eexitt(1));}cout<<<"\\n密码码错误!!请重新新输入""<<eendll;for(aabcdd=1;;abccd<==100000000000;abbcd+++){}loginn();;}whille(eerroor<33);}whilee(1)){systeem(""clss");;menu(();cout<<<"请请选择数数字编号号0~88"<<<enddl;intii1;cin>>>i1;;whilee(!((i1>>=0&&&i11<=88)){cout<<<"输输入有误误,请重重新输入入:"<<<enndl;;cin>>>i1;;}switcch(ii1){case1:wl.addd());///添加breakk;case2:wl.moodiffy());///修改breakk;case3:wl.deele(();///删除除breakk;case4:wl.soort(();///排序序breakk;case5:wl.seearcch());///查找breakk;casse66:wl.shhowwworkker(();///显示示breakk;case7:wl.saave(();///保存存breakk;case8:wl.reead();;//查查看breakk;case0:exiit(00);cout<<<"系系统退出出!!""<<eendll;exit((0);;defauult::breakk;}cout<<<"是是否返回回主菜单单?Y/NN"<<<enddl;cin>>>p;if(p==="nn"|||p==="N""){coutt<<""系统退退出!!!"<<<enddl;exit((0);;}getchhar(();}case2:couut<<<"请输输入密码码:";;intb;;forr(b==0;bb<100;b+++){befforee=geetchh();;if(bbefoore===133){pa[b]]='\\0';;breakk;}if(bbefoore===8)){bbefoore==gettchaar());}elsee{ppa[bb]=bbefoore;;cout<<<'**';}}if((strrcmpp(paa,"1123"")===0|||strrcmpp(paa,"4456"")===0){couut<<<""\n登登录成功功,祝您您工作顺顺利,心心情愉快快!"<<<enndl;;}elsse{do{errorr++;;if(errrorr==33){coout<<<enndl;;coout<<<"\\n*******************************************************************"<<<enddl;coout<<<"***密码码错误,系系统自动动退出,请请稍后重重新登录录***"<<<enndl;;couut<<<"*******************************************************************"<<<enddl;ffor((abccd=11;abbcd<<=100000000000;aabcdd++)){}eexitt(1));}cout<<<"\\n密码码错误!!请重新新输入""<<eendll;for(aabcdd=1;;abccd<==100000000000;abbcd+++){}loginn();;}whille(eerroor<33);}whilee(1)){systeem(""clss");;menu11();;cout<<<"请请选择数数字编号号0~11"<<<enddl;intii1;cin>>>i1;;whilee(!((i1>>=0&&&i11<=77)){cout<<<"输输入有误误,请重重新输入入:"<<<enndl;;cin>>>i1;;}switcch(ii1){case1:wl.seearcch());///查找breakk;case0:exiit(00);cout<<<"系系统退出出!!""<<eendll;exit((0);;defauult::breakk;}cout<<<"是是否返回回主菜单单?Y/NN"<<<enddl;cin>>>p;if(p==="nn"|||p==="N""){coutt<<""系统退退出!!!"<<<enddl;exit((0);;}getchhar(();}}}voidWorrkerrLisst:::addd()///职工工信息添添加函数数实现{cout<<<"请请输入职职工信息息:"<<<enndl;;ccoutt<<""工号\\t姓名名\t性性别\tt学历\\t年龄龄\t工工资\tt地址\\t电话话"<<<enddl;strinngnnum;;cin>>>numm;for(iinti=00;i<<NUMM;i+++)whilee(nuum===w[ii].nnum)){cout<<<"此此职工编编号已存存在,请请重新输输入:""<<eendll;cin>>>numm;}w[NUMM].nnum==numm;cin>>>w[NNUM]].naame>>>w[[NUMM].ssex>>>w[[NUMM].eedu>>>w[[NUMM].aage>>>w[[NUMM].ssalaary>>>w[[NUMM].aaddrresss>>ww[NUUM]..tell;++NUMM;countt=NUUM;}voidworrkerr::sshoww()///显示示职工信信息函数数实现{cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<nuum<<<'\tt'<<<namme<<<'\tt'<<<sexx<<''\t''<<eedu<<<'\\t'<<<agge<<<'\tt'<<<sallaryy<<''\t''<<aaddrresss<<''\t''<<ttel<<<enndl;;cout<<<enndl;;}voidWorrkerrLisst:::moddifyy()///职工工信息修修改函数数实现{if(NUUM<==0){cout<<<"没没有职工工信息存存入,系系统将返返回主菜菜单"<<<enndl;;menu(();}else{coutt<<""职工信信息如下下:"<<<enndl;;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(iinti=00;i<<couunt;;i+++)cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}cout<<<"请请输入需需要修改改信息职职工的工工号:""<<eendll;strinngnnum11;cin>>>numm1;intjj=0,,k;intfflagg=1;;whilee(fllag)){for(;;j<ccounnt;jj++)){if(nuum1===w[[j]..numm){flag==0;k=j;breakk;}}if(fllag)){cout<<<"不不存在此此员工,请请重新输输入:""<<eendll;j=0;cin>>>numm1;}}cout<<<"你你选择的的职工的的信息为为:"<<<enndl;;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<w[[k]..numm<<''\t''<<ww[k]].naame<<<'\\t'<<<w[[k]..sexx<<''\t''<<ww[k]].eddu<<<'\tt'<<<w[kk].aage<<<'\\t'<<<w[[k]..sallaryy<<''\t''<<ww[k]].adddreess<<<'\\t'<<<w[[k]..tell<<eendll;cout<<<enndl;;cout<<<"***************************************************************"<<<enndl;;cout<<<"***1..修改工工号**""<<eendll;cout<<<"***2..修改姓姓名**""<<eendll;cout<<<"***3..修改性性别**""<<eendll;cout<<<"***4..修改学学历**""<<eendll;cout<<<"***5..修改年年龄**""<<eendll;cout<<<"***6..修改工工资**""<<eendll;cout<<<"***7..修改地地址**""<<eendll;cout<<<"***8..修改电电话**""<<eendll;cout<<<"***0..返回主主菜单***"<<<enndl;;cout<<<"***************************************************************"<<<enndl;;cout<<<enndl;;cout<<<"请请选择数数字编号号0~88"<<<enddl;intii3;cin>>>i3;;whilee(i33<0|||i33>8)){cout<<<"输输入有误误,请重重新输入入:"<<<enndl;;cin>>>i3;;}switcch(ii3){case1:cout<<<"请请输入新新的职工工工号::";cin>>>w[kk].nnum;;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case2:cout<<<"请请输入新新的职工工姓名::";cin>>>w[kk].nnamee;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case3:cout<<<"请请输入新新的职工工性别::";cin>>>w[kk].ssex;;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case4:cout<<<"请请输入新新的职工工学历::";cin>>>w[kk].eedu;;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case5:cout<<<"请请输入新新的职工工年龄::";cin>>>w[kk].aage;;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case6:cout<<<"请请输入新新的职工工工资::";cin>>>w[kk].ssalaary;;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case7:cout<<<"请请输入新新的职工工地址::";cin>>>w[kk].aaddrresss;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case8:cout<<<"请请输入新新的职工工电话::";cin>>>w[kk].ttel;;cout<<<"修修改信息息已保存存,现返返回主菜菜单:""<<eendll;menu(();breakk;case0:menu(();defauult::breakk;}}voidWorrkerrLisst:::shoowwoorkeer())//职职工信息息显示函函数实现现{if(NUUM<==0){cout<<<"没没有职工工信息存存入,系系统将返返回主菜菜单"<<<enndl;;}elsecout<<<"已已保存的的职工信信息如下下:"<<<enndl;;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(iinti=00;i<<couunt;;i+++)cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;cout<<<"是是否返回回主菜单单?Y/NN"<<<enddl;cin>>>p;whilee(1)){if(p==="yy"|||p==="Y""){menu(();}elseif((p==="n""||pp==""N")){cout<<<"系系统退出出!!""<<eendll;exit((0);;}else{cout<<<"输输入有误误,请重重新输入入:";;cin>>>p;}}}voidWorrkerrLisst:::seaarchh(){if(NUUM<==0){cout<<<"没没有职工工信息存存入,系系统将返返回主菜菜单"<<<enndl;;}elsecout<<<"请请选择查查找方式式:"<<<enndl;;cout<<<"***************************************************************"<<<enndl;;cout<<<"***1..按工号号查找***"<<<enndl;;cout<<<"***2..按姓名名查找***"<<<enndl;;cout<<<"***3..按工资资查找***"<<<enndl;;cout<<<"***4..按学历历查找***"<<<enndl;;cout<<<"***0..返回主主菜单***"<<<enndl;;cout<<<"***************************************************************"<<<enndl;;cout<<<enndl;;cout<<<"请请选择数数字编号号0~44"<<<enddl;intii4;cin>>>i4;;whilee(i44<0|||i44>4)){cout<<<"输输入有误误,请重重新输入入:"<<<enndl;;cin>>>i4;;}if(i44==11){strinngnnum22;cout<<<"请请输入要要查询的的职工的的工号::"<<<enddl;cin>>>numm2;intjj=0,,k;intfflagg=1;;whilee(fllag)){for(;;j<ccounnt;jj++)){if(nuum2===w[[j]..numm){flag==0;k=j;cout<<<"查查询的职职工信息息如下::"<<<enddl;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<w[[k]..numm<<''\t''<<ww[k]].naame<<<'\\t'<<<w[[k]..sexx<<''\t''<<ww[k]].eddu<<<'\tt'<<<w[kk].aage<<<'\\t'<<<w[[k]..sallaryy<<''\t''<<ww[k]].adddreess<<<'\\t'<<<w[[k]..tell<<eendll;breakk;}}if(fllag)){flag==0;cout<<<"不不存在此此职工!!!\nn返回主主菜单""<<eendll;breakk;}}}elseif((i4===2)){strinngnnamee2;cout<<<"请请输入要要查询的的职工的的姓名::"<<<enddl;cin>>>namme2;;intjj2=00,k22;intfflagg2=11;whilee(fllag22){for(;;j2<<couunt;;j2+++){if(naame22==ww[j22].nnamee){flag22=0;;k2=j22;cout<<<"查查询的职职工信息息如下::"<<<enddl;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<w[[k2]].nuum<<<'\tt'<<<w[kk2]..namme<<<'\tt'<<<w[kk2]..sexx<<''\t''<<ww[k22].eedu<<<'\\t'<<<w[[k2]].agge<<<'\tt'<<<w[kk2]..sallaryy<<''\t''<<ww[k22].aaddrresss<<''\t''<<ww[k22].ttel<<<enndl;;breakk;}}if(fllag22){flag22=0;;cout<<<"不不存在此此职工!!!\nn返回主主菜单""<<eendll;breakk;}}}elseif((i4===3)){intssalaary22;cout<<<"请请输入要要查询的的职工的的工资::"<<<enddl;cin>>>sallaryy2;intjj3=00,k33;intfflagg3=11;whilee(fllag33){for(;;j3<<couunt;;j3+++){if(saalarry2===w[[j3]].saalarry){flag33=0;;k3=j33;cout<<<"查查询的职职工信息息如下::"<<<enddl;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<w[[k3]].nuum<<<'\tt'<<<w[kk3]..namme<<<'\tt'<<<w[kk3]..sexx<<''\t''<<ww[k33].eedu<<<'\\t'<<<w[[k3]].agge<<<'\tt'<<<w[kk3]..sallaryy<<''\t''<<ww[k33].aaddrresss<<''\t''<<ww[k33].ttel<<<enndl;;breakk;}}if(fllag33){flag33=0;;cout<<<"不不存在此此职工!!!\nn返回主主菜单""<<eendll;breakk;}}}elseif((i4===4)){strinngeedu22;cout<<<"请请输入要要查询的的职工的的学历::"<<<enddl;cin>>>eduu2;intjj4=00,k44;intfflagg4=11;whilee(fllag44){for(;;j4<<couunt;;j4+++){if(eddu2===w[[j4]].eddu){flag44=0;;k4=j44;cout<<<"查查询的职职工信息息如下::"<<<enddl;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<w[[k4]].nuum<<<'\tt'<<<w[kk4]..namme<<<'\tt'<<<w[kk4]..sexx<<''\t''<<ww[k44].eedu<<<'\\t'<<<w[[k4]].agge<<<'\tt'<<<w[kk4]..sallaryy<<''\t''<<ww[k44].aaddrresss<<''\t''<<ww[k44].ttel<<<enndl;;breakk;}}if(fllag44){flag44=0;;cout<<<"不不存在此此职工!!!\nn返回主主菜单""<<eendll;breakk;}}}elseif((i4===0))menu(();}voidWorrkerrLisst:::sorrt())//职职工信息息排序功功能实现现{if(NUUM<==0){cout<<<"没没有职工工信息存存入,系系统将返返回主菜菜单"<<<enndl;;menu(();}elsecout<<<"请请选择排排序方式式:"<<<enndl;;ccoutt<<""**************************************************************""<<eendll;ccoutt<<""**11.按工工号排序序(升序序)***"<<<enddl;ccoutt<<""**22.按工工号排序序(降序序)***"<<<enndl;;ccoutt<<""**33.按姓姓名排序序(升序序)***"<<<enndl;;ccoutt<<""**44.按姓姓名排序序(降序序)***"<<<enndl;;ccoutt<<""**55.按工工资排序序(升序序)***"<<<enndl;;ccoutt<<""**66.按工工资排序序(降序序)***"<<<enndl;;ccoutt<<""**00.返回回主菜单单**""<<eendll;ccoutt<<""**************************************************************""<<eendll;ccoutt<<eendll;ccoutt<<""请选择择数字编编号0~~6"<<<enndl;;intii5;ccin>>>i55;whilee(i55<0|||i55>6)){cout<<<"输输入有误误,请重重新输入入:"<<<enndl;;cin>>>i5;;}if(i55==11){intii,j;;for(ii=0;;i<ccounnt-11;i+++)for(jj=0;;j<ccounnt-11-i;;j+++)if(w[[j]..numm>w[[j+11].nnum)){strinngttempp;temp==w[jj].nnum;;w[j]..numm=w[[j+11].nnum;;w[j+11].nnum==temmp;}cout<<<"按按工号升升序后的的信息如如下:""<<eendll;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(ii=0;;i<ccounnt;ii++))cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}elseif((i5===2)){intii,j;;for(ii=0;;i<ccounnt-11;i+++)for(j=00;j<<couunt--1-ii;j+++)if(w[[j]..numm<w[[j+11].nnum)){strinngttempp;temp==w[jj].nnum;;w[j]..numm=w[[j+11].nnum;;w[j+11].nnum==temmp;}cout<<<"按按工号降降序后的的信息如如下:""<<eendll;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(ii=0;;i<ccounnt;ii++))cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}elseif(i55==33){intii,j;;for(ii=0;;i<ccounnt-11;i+++)for(jj=0;;j<ccounnt-11-i;;j+++)if(w[[j]..namme>ww[j++1]..namme){strinngttempp;temp==w[jj].nnamee;w[j]..namme=ww[j++1]..namme;w[j+11].nnamee=teemp;;}cout<<<"按按姓名升升序后的的信息如如下:""<<eendll;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(ii=0;;i<ccounnt;ii++))cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}elseif(i55==44){intii,j;;for(ii=0;;i<ccounnt-11;i+++)for(j=00;j<<couunt--i-11;j+++)if(w[[j]..namme<ww[j++1]..namme){strinngttempp;temmp=ww[j]].naame;;w[jj].nnamee=w[[j+11].nnamee;w[jj+1]].naame==temmp;}cout<<<"按按姓名降降序后的的信息如如下:""<<eendll;ccoutt<<""工号\\t姓名名\t性性别\tt学历\\t年龄龄\t工工资\tt地址\\t电话话"<<<enddl;for(ii=0;;i<ccounnt;ii++))cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}elseif(i55==55){intii,j;;for(i=00;i<<couunt--1;ii++))for(j=00;j<<couunt--i-11;j+++)if(w[[j]..sallaryy>w[[j+11].ssalaary)){inttemmp;teemp==w[jj].ssalaary;;w[[j]..sallaryy=w[[j+11].ssalaary;;w[[j+11].ssalaary==temmp;}cout<<<"按按工资升升序后的的信息如如下:""<<eendll;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(i=00;i<<couunt;;i+++)cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}elseif(i55==66){intii,j;;for(i=00;i<<couunt--1;ii++))foor(jj=0;;j<ccounnt-ii-1;;j+++)if((w[jj].ssalaary<<w[jj+1]].saalarry){inttemmp;temmp=ww[j]].saalarry;w[jj].ssalaary==w[jj+1]].saalarry;w[jj+1]].saalarry=ttempp;}cout<<<"按按工资降降序后的的信息如如下:""<<eendll;ccoutt<<""工号\\t姓名名\t性性别\tt学历\\t年龄龄\t工工资\tt地址\\t电话话"<<<enddl;for(i=00;i<<couunt;;i+++)cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;}elseif((i5===0))menu(();}voidWorrkerrLisst:::delle())//职职工信息息删除功功能实现现{intii;if(NUUM<==0){cout<<<"没没有职工工信息存存入,系系统将返返回主菜菜单"<<<enndl;;menu(();}elsecout<<<"职职工信息息如下::"<<<enddl;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(i=00;i<<couunt;;i+++)cout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;cout<<<"请请输入需需要删除除信息职职工的工工号:""<<eendll;strinngnnum33;cin>>>numm3;intjj=0,,k;intfflagg=1;;whilee(fllag)){for(;;j<ccounnt;jj++)){if(nuum3===w[[j]..numm){flag==0;k=j;breakk;}}if(fllag)){cout<<<"不不存在此此员工,请请重新输输入:""<<eendll;j=0;cin>>>numm3;}}cout<<<"你你选择的的职工的的信息为为:"<<<enndl;;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;cout<<<w[[k]..numm<<''\t''<<ww[k]].naame<<<'\\t'<<<w[[k]..sexx<<''\t''<<ww[k]].eddu<<<'\tt'<<<w[kk].aage<<<'\\t'<<<w[[k]..sallaryy<<''\t''<<ww[k]].adddreess<<<'\\t'<<<w[[k]..tell<<eendll;cout<<<"确确认请输输入Y\\t返回回主菜单单请输入入N""<<eendll;strinngpp;cin>>>p;whilee(1)){if(p==="yy"|||p==="Y""){cout<<<"员员工信息息已删除除!"<<<enndl;;for(iinti=00;i<<couunt;;i+++)if(w[[i]..numm==nnum33)intjj=i;;for(;;j<==couunt--1;jj++))w[j]==w[jj+1]];countt--;;breakk;}elseif((p==="n""||pp==""N")){menu(();}else{cout<<<"输输入有误误,请重重新输入入:";;cin>>>p;}}}voidWorrkerrLisst:::savve()){intii;if(NUUM<==0){cout<<<"没没有职工工信息存存入,系系统将返返回主菜菜单"<<<enndl;;menu(();}else{ofstrreammfoout;;fout..opeen(""D:\\\woorkeer.ttxt"",ioos_bbasee::oout));cout<<<"文文件正在在保存........请请稍候!!!"<<<enndl;;cout<<<"数数据保存存成功!!!!""<<eendll;cout<<<"已已保存员员工信息息如下::"<<<enddl;cout<<<"工工号\tt姓名\\t性别别\t学学历\tt年龄\\t工资资\t地地址\tt电话""<<eendll;for(ii=0;;i<ccounnt;ii++))fout<<<w[[i]..numm<<''\t''<<ww[i]].naame<<<'\\t'<<<w[[i]..sexx<<''\t''<<ww[i]].eddu<<<'\tt'<<<w[ii].aage<<<'\\t'<<<w[[i]..sallaryy<<''\t''<<ww[i]].adddreess<<<'\\t'<<<w[[i]..tell<<eendll;cout<<<"系系统返回回主菜单单:"<<<enndl;;menu(();fout..cloose(();}}voidWorrkerrLisst:::reaad()){ifstrreamminn("DD:\\\worrkerr.txxt"));intii=0;;intccounnt=33;for(ii=0;;i<ccounnt;ii++)){in>>ww[i]].nuum>>>w[ii].nnamee>>ww[i]].seex>>>w[ii].eedu>>>w[[i]..agee>>ww[i]].saalarry>>>w[ii].aaddrresss>>ww[i]].teel;couut<<<w[ii].nnum<<<'\\t'<<<w[[i]..namme<<<'\tt'<<<w[ii].ssex<<<'\\t'<<<w[[i]..eduu<<''\t''<<ww[i]].agge<<<'\tt'<<<w[ii].ssalaary<<<'\\t'<<<w[[i]..adddresss<<<'\tt'<<<w[ii].ttel<<<enndl;;}}intmmainn(){WorkeerLiiste;e.reaad());loginn();;domaiin());voidsavve());voidreaad());returrn00;}五、测试数数据及其其结果分分析运行后,程程序的主主菜单界界面如下下:1.登录页页面(1)管理理员模式式的页面面(2)用户户模式页页面2.主菜单单(1)职工工信息添添加(2)职工工信息修修改(3)职工工信息删删除(4)职工工信息排排序职工信息查查找(6)职工工信息显显示(7)职工工信息保保存(8)员工工信息查查看(9)退出出六、调试过过程中的的问题1文件的读读入:解决方案::voiidWWorkkerLListt::rreadd(){ifstrreamminn("DD:\\\worrkerr.txxt"));intii=0;;intccounnt=55;for(ii=0;;i<ccounnt;ii++)){in>>ww[i]].nuum>>>w[ii].nnamee>>ww[i]].seex>>

温馨提示

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

评论

0/150

提交评论