




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
*******************实践教学******************江西理工大学软件学院2023年春季学期C++语言程序设计课程设计〔第四组〕题目:职工信息管理系统专业班级:_______姓名:________学号:112121指导教师:吉宝玉成绩:____2023年6月25日目录摘要0前言0正文01.系统功能分析02.系统总体设计03.详细设计04.系统测试05.软件使用说明书0设计总结0参考文献0致谢0附录:原程序代码0摘要随着经济的高速开展,一个好的职工信息管理程序在企业及用人单位扮演着重要的角色,为了设计一个功能强大的职工信息管理系统,在设计中我们做出了明细分工,目的是要让本组成员都从这次课程设计中学到编程经验与团队精神。“职工信息管理系统〞,系统以菜单方式工作,编写存放有职工根本信息,包含职工工号,姓名,性别,出生年月,学历,职务,工资,住址,等,并且要求录入职工号不重复;录入的职工号信息要求用文件形式保存,并可以对其进行浏览、查询、修改、删除等根本操作,建立职工信息管理的文件。关键词:职工信息管理;文件;浏览;查询;修改。前言随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断开展的新型学科,任何一个单位要生存要开展要高效率的把内部活动有机的组织起来,就必须建立自身特点相适应的管理信息系统。本组设计的是一个关于职工信息管理的数据库系统,通过这个系统,管理员可以简捷方便的对职工信息进行增加、删除、修改等功能,而用户也可以通过这个系统对职工信息进行查询等功能。在日益开展的现代社会,一个高效实用的职工信息管理系统已经是企业必不可少的一个管理工具,它可以使企业在管理方面减少很多时间,本课程设计针对现代社会企业对员工信息的管理而设计,使员工的管理更加的简捷,更加的方便,界面友好,易于操作。采用的的开发环境是visualstdio2023.在设计中,我们放弃的传统的面对过程的结构化设计思想,因为面向过程的结构体的或链表的方法存储每个员工的静态属性:编号、姓名、性别、年龄、、工资等数据有很多的不方便也有很多的不平安,所以我们采用C++的对象的编程思想来把每个员工的数据封装成一个人员的对象。使得操作的方式更加的合理,平安。也使本组课程设计的成员更加的了解面向对象程序设计的解决问题的思维方式。正文一.系统功能分析该职工管理系统针对员工信息数据的处理设计了以下功能:添加职工信息添加员工信息,提供员工信息的添加,在该模块中设计了平安检查机制,即确认是否添加员工的信息,假设对员工信息的添加不满意,那么可以选择重新输入。还设置有返回主菜单的选项以方便用户。修改职工信息修改员工信息设置了员工人数检查,果员工人数NUM的值为0,那么返回主菜单。如果员工人数NUM不为0,那么进入删除员工信息的界面。修改员工信息板块功能强大,界面友好,用循环控制修改某员工属性,这样使得操作极为方便。删除职工信息删除员工信息中设计了对员工人数的检查,如果员工人数NUM的值为0,那么返回到主菜单。如果员工人数NUM不为0,那么进入删除员工信息的界面。界面包括员工信息列表,和删除选项,方便用户的操作。员工职工查找通过find()函数进行查找。该函数比拟简单,通过循环一次比拟Per[n].num是否与你输入的num是否相等,如果相等,那么输入到屏幕上,如果未找到任何匹配的员工,那么显示“未找该员工〞。保存职工信息保存员工的信息,即为将当前所有的员工的信息存入到workerlist.txt中。这里我们采用的是C++的ofstream的写入文件的对象进行控制。职工信息的排序对员工信息进行排序,包括按员工编号排序〔从小到大〕,按员工工资进行排序〔从高到低〕。其中也设置了员工人数检查机制,即:如果员工的人数为0,那么直接返回主菜单。职工信息的显示对职工信息进行显示,包括职工的工号,姓名,年龄,学历,工资地址,等信息。方便对员工了解。系统总体设计1,编写要求:先声明职工人员结构,该结构中包含编号、姓名、出生年月、性别,职称,部门,根本工资等成员变量,并定义人员结构数组;编写主函数,要求提供一界面,允许工作人员输入、修改和删除员工信息;将员工信息分别按编号由小到大、根本工资由大到小的顺序进行显示,要求采用不同的排序算法;给出某员工编号,可对该员工信息进行查找,假设找到,显示相应信息,否那么显示“该员工不存在〞,要求用顺序查找和二分查找法进行查找;将所有职工信息保存在磁盘上。界面:***********************************************员工管理系统**-------------------------------**1.职工信息输入**2.职工信息修改**3.职工信息删除**4.职工信息查找**5.职工信息保存**6.职工工资排行**7.职工信息显示**0.退出***********************************************2,编写目的:完成题目所要求的全部功能,并参加本组自己的设计风格,在界面友好的根底上,增加一些附加功能,使得功能更为强大,最终得到一个可靠性高,易于操作的职工信息管理的系统。3,功能划分该系统可以按功能进行模块划分,如图主菜单主菜单添加职工信息修改职工信息职工删除信息职工信息查询职工信息排序保存员工信息Switch()退出While()开始main()读取数据系统模块图其中:主菜单模块完成用户命令的接受,此模块也是职工信息管理的入口,用户所要进行的各种操作均需在此模块中进行选择,并进而调用其他模块实现相应的功能。信息添加模块完成职工信息的输入功能,输入信息包括职工号、姓名、性别,出生年月、学历、职务、工资、住址、等。信息显示模块完成已录入职工信息的显示。信息查询模块完成职工信息的查询,查询时对应有按编号查询和按姓名查询两种方式。信息修改模块完成职工信息的修改功能。信息删除功能模块完成职工信息的删除功能。信息排序模块完成对职工信息的排序,排序内容包括工号,工资等。信息保存模块完成对职工信息的保存。4.数据结构本系统中主要的数据结构就是职工的信息,包含职工号、姓名、性别、出生年月、学历、职务、工资、住址、等,在处理过程中各项可以作为一个职工的不同属性来进行处理。5.程序流程系统的执行应从功能菜单项选择择开始,依据用户的选择来进行后续的处理,直到用户选择退出系统为止,其间应对用户的选择做出判断及异常处理。系统的流程图如下图:开始开始菜单项选择择输入?浏览?查询?修改?否否删除?信息输入信息浏览信息查询信息修改信息删除是是是是是结束否否否UML图Class_cout:string_num:string_workerlist:string+add:void+dele:void+modify:void+save:void+search:void+showworker:void+sort:void+workerlist:void详细设计〔编码实现〕小组模块分工〔本人负责:职工信息修改模块与保存模块〕voidWorkerList::modify()//职工信息修改函数实现{if(NUM<=0) { cout<<"没有职工信息存入,系统将返回主菜单"<<endl; menu(); }else { cout<<"职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; } cout<<"请输入需要修改信息职工的工号:"<<endl; stringnum1; cin>>num1;intj=0,k;intflag=1;while(flag) {for(;j<count;j++) {if(num1==w[j].num) { flag=0; k=j;break; } }if(flag) { cout<<"不存在此员工,请重新输入:"<<endl; j=0; cin>>num1; } } cout<<"你选择的职工的信息为:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<w[k].num<<'\t'<<w[k].name<<'\t'<<w[k].sex<<'\t'<<w[k].edu<<'\t'<<w[k].age<<'\t'<<w[k].salary<<'\t'<<w[k].address<<'\t'<<w[k].tel<<endl; cout<<endl; cout<<"***********************************************"<<endl; cout<<"**1.修改工号**"<<endl; cout<<"**2.修改姓名**"<<endl; cout<<"**3.修改性别**"<<endl; cout<<"**4.修改学历**"<<endl; cout<<"**5.修改年龄**"<<endl; cout<<"**6.修改工资**"<<endl; cout<<"**7.修改地址**"<<endl; cout<<"**8.修改**"<<endl; cout<<"**0.返回主菜单**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"请选择数字编号~8"<<endl;inti3; cin>>i3;while(i3<0||i3>8) { cout<<"输入有误,请重新输入:"<<endl; cin>>i3; }switch(i3) {case1: cout<<"请输入新的职工工号:"; cin>>w[k].num; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case2: cout<<"请输入新的职工姓名:"; cin>>w[k].name; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case3: cout<<"请输入新的职工性别:"; cin>>w[k].sex; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case4: cout<<"请输入新的职工学历:"; cin>>w[k].edu; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case5: cout<<"请输入新的职工年龄:"; cin>>w[k].age; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case6: cout<<"请输入新的职工工资:"; cin>>w[k].salary; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case7: cout<<"请输入新的职工地址:"; cin>>w[k].address; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case8: cout<<"请输入新的职工:"; cin>>w[k].tel; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case0: menu();default:break; }职工信息保存模块voidWorkerList::save(){if(NUM<=0) { cout<<"没有职工信息存入,系统将返回主菜单"<<endl; menu(); }else { ofstreamfout; fout.open("D:\\worker.txt",ios::out); cout<<"文件正在保存......请稍候!!"<<endl; cout<<"数据保存成功!!!"<<endl; fout<<"已保存员工信息如下:"<<endl; fout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) fout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; cout<<"系统返回主菜单:"<<endl; menu(); fout.close(); } }系统测试通过对员工的信息的添加,修改,删除,保存,排序,查找等功能进行检测。未发现任何异常现象。在这里:我们将测试的结果图片贴在了下面5.软件使用说明书〔1〕根据正确的提示安装软件。〔2〕PC台式机和便携式电脑都可运行。(3)翻开该程序系统,浏览菜单,根据需要选择功能,进行各项操作。操作如下:点击开始菜单,进入菜单项选择择。输入:将所需的信息输入。输出:职工根本信息。输入:根据不同的需要选择,当信息输入显示出错误时,进入浏览信息,找出错误。当错误不能改正,那么退出浏览信息。进入查询信息:那么屏幕会出现已一个对话框——按工号查找,把相应的所需信息的状态〔是否借出〕。当查询不能显示需要时进入修改程序,把所输入的信息进行修改,使之正确能够正常运行或进入删除信息中,重新输入自己所要的信息。当信息输入正确,进入你所需要的菜单程序中:职工信息:显示职工号、姓名、性别、出生年月、学历、职务、工资、住址、等。管理员信息:显示出职工信息管理的负责人及他们的工号。设计总结在本系统的开发过程中,由于组是初次开发软件,在知识、经验方面都存在着缺乏。另外,在整个开发的过程中,时间也比拟仓促。因此,该系统必然会存在一些缺陷和缺乏。因为对职工信息管理的整个流程不够熟悉,在需求分析时未能做到完全满足用户的需求。尽管本管理系统存在着很多缺乏,但其功能全面、易于日后程序更新、数据库管理容易、界面友好、操作方便、效率高、平安性好等优点是本管理系统所必需的。通过开发这个系统,我组掌握了的工程根本开发过程,用到的知识稳固了我组对C语言的学习,但在这次设计中的最大收获并不是掌握这几门开发工具的应用,而是学会了设计系统的思维方法,以及与同学们之间相互帮助的精神。参考文献[1]王连相c++程序设计教程,中国铁道出版社,2007[2]谭浩强C语言程序设计教程,安徽出版社,1999[3]谭浩强C程序设计题解与上机指导,清华大学出版社,1999[4]C语言的实际应用,安徽科学技术出版社,2000[5]C语言函数手册,机械工业出版社,1999[6]C语言实用程序荟萃,西安电子科技大学出版社,1993鸣谢。致谢在编写程序的过程中,我们得到了老师的精心指导以及孜孜不倦的教诲,在老师的指导下,我们的能力得到了提高,同时养成了科学、严谨的作风和习惯,在此,我们对老师的精心栽培表示衷心的感谢!感谢我们小组同学对我的帮助和指点,尤其感谢我的舍友在非常时期,在生活和学习上帮我许多忙。在课设即将完成之际,我的心情无法平静,从开始进入课题到课设的顺利完成,有多少可敬的师长、同学、朋友给了我无言的帮助,在这里请接受我诚挚的谢意。附录:本组成员。组长:龚贵彬。组员:樊后涛,任宁宁,方磊,余望明,宋帅。了解工作要求,明确分工内容,网上查阅相关资料。所有组员共同参与。主函数,显示菜单函数的编写。由余望明完成。编写信息添加模块,由任宁宁完成。职工信息修改,保存模块的编写,由龚贵彬完成。5职工信息查询模块,由樊后涛完成。6.职工信息删除模块,由宋帅完成。职工信息排序模块,由方磊完成需求分析设计由任宁宁和樊后涛完成9.文本编写由龚贵彬完成。最后总结调试。由所有组员共同完成。源程序代码:#include<iostream>#include"string"#include<fstream>#include<stdlib.h>#include<stdio.h>#defineN100//N作为最大职工总数intf=0;//f作为开关usingnamespacestd;stringp;//p作为接收菜单项选择项的字符串voidmenu();//显示菜单classworker{public: worker(){} voidshow();//职工信息显示 ~worker(){}friendclassWorkerList;private: stringnum,name,sex,edu,address,tel;intage,salary;};classWorkerList{private: workerw[N];intNUM;//用来计算职工数目intcount;//用来暂时记录当前操作第几个职工public:voidadd();//职工信息录入voidsort();//职工信息排序voidsearch();//职工信息查找voiddele();//职工信息删除voidmodify();//职工信息修改voidsave();//职工信息以文件形式保存voidshowworker();//显示职工信息在屏幕上 WorkerList(){ NUM=0; count=0; }};voidmenu(){ cout<<endl; cout<<"***********************************************"<<endl; cout<<"****"<<endl; cout<<"**职工信息管理系统主菜单**"<<endl; cout<<"****"<<endl; cout<<"**1.职工信息添加**"<<endl; cout<<"**2.职工信息修改**"<<endl; cout<<"**3.职工信息删除**"<<endl; cout<<"**4.职工信息排序**"<<endl; cout<<"**5.职工信息查找**"<<endl; cout<<"**6.职工信息显示**"<<endl; cout<<"**7.职工信息保存**"<<endl; cout<<"**0.退出**"<<endl; cout<<"****"<<endl; cout<<"***********************************************"<<endl; cout<<endl;}voiddomain()//主菜单函数实现{ WorkerListwl;while(1) { system("cls"); menu(); cout<<"请选择数字编号~7"<<endl;inti1; cin>>i1;while(!(i1>=0&&i1<=7)) { cout<<"输入有误,请重新输入:"<<endl; cin>>i1; }switch(i1) {case1: wl.add();break;case2: wl.modify();break;case3: wl.dele();break;case4: wl.sort();break;case5: wl.search();break;case7: wl.save();break;case6: wl.showworker();break;case0: cout<<"系统退出!!"<<endl; exit(0);default:break; } cout<<"是否返回主菜单?Y/N"<<endl; cin>>p;if(p=="n"||p=="N") { cout<<"系统退出!!"<<endl; exit(0); }//getchar(); }}voidWorkerList::add()//职工信息添加函数实现{ cout<<"请输入职工信息:"<<endl;cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; stringnum; cin>>num;for(inti=0;i<NUM;i++)while(num==w[i].num) { cout<<"此职工编号已存在,请重新输入:"<<endl; cin>>num; } w[NUM].num=num; cin>>w[NUM].name>>w[NUM].sex>>w[NUM].edu>>w[NUM].age>>w[NUM].salary>>w[NUM].address>>w[NUM].tel; ++NUM; count=NUM;}voidworker::show()//显示职工信息函数实现{ cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<num<<'\t'<<name<<'\t'<<sex<<'\t'<<edu<<'\t'<<age<<'\t'<<salary<<'\t'<<address<<'\t'<<tel<<endl; cout<<endl;}voidWorkerList::modify()//职工信息修改函数实现{if(NUM<=0) { cout<<"没有职工信息存入,系统将返回主菜单"<<endl; menu(); }else { cout<<"职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; } cout<<"请输入需要修改信息职工的工号:"<<endl; stringnum1; cin>>num1;intj=0,k;intflag=1;while(flag) {for(;j<count;j++) {if(num1==w[j].num) { flag=0; k=j;break; } }if(flag) { cout<<"不存在此员工,请重新输入:"<<endl; j=0; cin>>num1; } } cout<<"你选择的职工的信息为:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<w[k].num<<'\t'<<w[k].name<<'\t'<<w[k].sex<<'\t'<<w[k].edu<<'\t'<<w[k].age<<'\t'<<w[k].salary<<'\t'<<w[k].address<<'\t'<<w[k].tel<<endl; cout<<endl; cout<<"***********************************************"<<endl; cout<<"**1.修改工号**"<<endl; cout<<"**2.修改姓名**"<<endl; cout<<"**3.修改性别**"<<endl; cout<<"**4.修改学历**"<<endl; cout<<"**5.修改年龄**"<<endl; cout<<"**6.修改工资**"<<endl; cout<<"**7.修改地址**"<<endl; cout<<"**8.修改**"<<endl; cout<<"**0.返回主菜单**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"请选择数字编号~8"<<endl;inti3; cin>>i3;while(i3<0||i3>8) { cout<<"输入有误,请重新输入:"<<endl; cin>>i3; }switch(i3) {case1: cout<<"请输入新的职工工号:"; cin>>w[k].num; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case2: cout<<"请输入新的职工姓名:"; cin>>w[k].name; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case3: cout<<"请输入新的职工性别:"; cin>>w[k].sex; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case4: cout<<"请输入新的职工学历:"; cin>>w[k].edu; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case5: cout<<"请输入新的职工年龄:"; cin>>w[k].age; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case6: cout<<"请输入新的职工工资:"; cin>>w[k].salary; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case7: cout<<"请输入新的职工地址:"; cin>>w[k].address; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case8: cout<<"请输入新的职工:"; cin>>w[k].tel; cout<<"修改信息已保存,现返回主菜单:"<<endl; menu();break;case0: menu();default:break; }}voidWorkerList::showworker()//职工信息显示函数实现{if(NUM<=0) { cout<<"没有职工信息存入,系统将返回主菜单"<<endl; menu(); }else cout<<"已保存的职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl;/*cout<<"是否返回主菜单?Y/N"<<endl; cin>>p; while(1) { if(p=="y"||p=="Y") { menu(); } elseif(p=="n"||p=="N") { cout<<"系统退出!!"<<endl; exit(0); } else { cout<<"输入有误,请重新输入:"; cin>>p; } }*/}voidWorkerList::search(){if(NUM<=0) { cout<<"没有职工信息存入,系统将返回主菜单"<<endl; menu(); }else cout<<"请选择查找方式:"<<endl; cout<<"***********************************************"<<endl; cout<<"**1.按工号查找**"<<endl; cout<<"**2.按姓名查找**"<<endl; cout<<"**3.按工资查找**"<<endl; cout<<"**4.按学历查找**"<<endl; cout<<"**0.返回主菜单**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"请选择数字编号~4"<<endl;inti4; cin>>i4;while(i4<0||i4>4) { cout<<"输入有误,请重新输入:"<<endl; cin>>i4; }if(i4==1) { stringnum2; cout<<"请输入要查询的职工的工号:"<<endl; cin>>num2;intj=0,k;intflag=1;while(flag) {for(;j<count;j++) {if(num2==w[j].num) { flag=0; k=j; cout<<"查询的职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<w[k].num<<'\t'<<w[k].name<<'\t'<<w[k].sex<<'\t'<<w[k].edu<<'\t'<<w[k].age<<'\t'<<w[k].salary<<'\t'<<w[k].address<<'\t'<<w[k].tel<<endl;break; } }if(flag) { flag=0; cout<<"不存在此职工!!\n返回主菜单"<<endl;break; } } } elseif(i4==2) { stringname2; cout<<"请输入要查询的职工的姓名:"<<endl; cin>>name2;intj2=0,k2;intflag2=1;while(flag2) {for(;j2<count;j2++) {if(name2==w[j2].name) { flag2=0; k2=j2; cout<<"查询的职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<w[k2].num<<'\t'<<w[k2].name<<'\t'<<w[k2].sex<<'\t'<<w[k2].edu<<'\t'<<w[k2].age<<'\t'<<w[k2].salary<<'\t'<<w[k2].address<<'\t'<<w[k2].tel<<endl;break; } }if(flag2) { flag2=0; cout<<"不存在此职工!!\n返回主菜单"<<endl;break; } } }elseif(i4==3) { intsalary2; cout<<"请输入要查询的职工的工资:"<<endl; cin>>salary2;intj3=0,k3;intflag3=1;while(flag3) {for(;j3<count;j3++) {if(salary2==w[j3].salary) { flag3=0; k3=j3; cout<<"查询的职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<w[k3].num<<'\t'<<w[k3].name<<'\t'<<w[k3].sex<<'\t'<<w[k3].edu<<'\t'<<w[k3].age<<'\t'<<w[k3].salary<<'\t'<<w[k3].address<<'\t'<<w[k3].tel<<endl;break; } }if(flag3) { flag3=0; cout<<"不存在此职工!!\n返回主菜单"<<endl;break; } } }elseif(i4==4) { stringedu2; cout<<"请输入要查询的职工的学历:"<<endl; cin>>edu2;intj4=0,k4;intflag4=1;while(flag4) {for(;j4<count;j4++) {if(edu2==w[j4].edu) { flag4=0; k4=j4; cout<<"查询的职工信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl; cout<<w[k4].num<<'\t'<<w[k4].name<<'\t'<<w[k4].sex<<'\t'<<w[k4].edu<<'\t'<<w[k4].age<<'\t'<<w[k4].salary<<'\t'<<w[k4].address<<'\t'<<w[k4].tel<<endl;break; } }if(flag4) { flag4=0; cout<<"不存在此职工!!\n返回主菜单"<<endl;break; } } }elseif(i4==0) menu();}voidWorkerList::sort()//职工信息排序功能实现{ if(NUM<=0) { cout<<"没有职工信息存入,系统将返回主菜单"<<endl; menu(); }else cout<<"请选择排序方式:"<<endl; cout<<"***********************************************"<<endl; cout<<"**1.按工号排序〔升序〕**"<<endl; cout<<"**2.按工号排序〔降序〕**"<<endl; cout<<"**3.按姓名排序〔升序〕**"<<endl; cout<<"**4.按姓名排序〔降序〕**"<<endl; cout<<"**5.按工资排序〔升序〕**"<<endl; cout<<"**6.按工资排序〔降序〕**"<<endl; cout<<"**0.返回主菜单**"<<endl; cout<<"***********************************************"<<endl; cout<<endl; cout<<"请选择数字编号~6"<<endl;inti5; cin>>i5;while(i5<0||i5>6) { cout<<"输入有误,请重新输入:"<<endl; cin>>i5; }if(i5==1) { for(inti=0;i<count-1;i++)for(intj=0;j<count-1-i;j++)if(w[j].num>w[j+1].num) { stringtemp; temp=w[j].num; w[j].num=w[j+1].num; w[j+1].num=temp; } cout<<"按工号升序后的信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==2) { for(inti=0;i<count-1;i++)for(intj=0;j<count-1-i;j++)if(w[j].num<w[j+1].num) { stringtemp; temp=w[j].num; w[j].num=w[j+1].num; w[j+1].num=temp; } cout<<"按工号降序后的信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==3) { for(inti=0;i<count-1;i++)for(intj=0;j<count-1-i;j++)if(w[j].name>w[j+1].name) { stringtemp; temp=w[j].name; w[j].name=w[j+1].name; w[j+1].name=temp; } cout<<"按姓名升序后的信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==4) { for(inti=0;i<count-1;i++)for(intj=0;j<count-i-1;j++)if(w[j].name<w[j+1].name) { stringtemp; temp=w[j].name; w[j].name=w[j+1].name; w[j+1].name=temp; } cout<<"按姓名降序后的信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==5) { for(inti=0;i<count-1;i++)for(intj=0;j<count-i-1;j++)if(w[j].salary>w[j+1].salary) {inttemp; temp=w[j].salary; w[j].salary=w[j+1].salary; w[j+1].salary=temp; } cout<<"按工资升序后的信息如下:"<<endl; cout<<"工号\t姓名\t性别\t学历\t年龄\t工资\t地址\t"<<endl;for(inti=0;i<count;i++) cout<<w[i].num<<'\t'<<w[i].name<<'\t'<<w[i].sex<<'\t'<<w[i].edu<<'\t'<<w[i].age<<'\t'<<w[i].salary<<'\t'<<w[i].address<<'\t'<<w[i].tel<<endl; }elseif(i5==6) { for(inti=0;i<count-1;i++
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度企业员工借款合同续签及调整协议
- 2025年度校园保安服务与校园内校园建筑设施维护合同
- 2025年度智能化厂房租赁及物联网服务合同
- 2025年度旅游景区停车位使用权转让及管理协议
- 二零二五年度教育行业员工劳动权益与教学质量合同
- 二零二五年度公司经理信息技术与网络安全聘用协议
- 2024年上海市高级职称评审的要求
- 二零二五年度拆除工程房屋安全协议及拆除施工监督
- 二零二五年度教育机构教职工劳动合同范本
- 项目总监年终述职报告
- 钢筋加工棚搭设方案
- 紫蓝色可爱卡通风《小王子》名著导读儿童文学PPT模板
- 六年级下册美术第10课头饰和帽子苏少版课件
- 来料检验标准书模板
- 安全疏散设施检查记录参考模板范本
- 二年级下册心理健康课件-第二十三课 勤俭节约|北师大版 (共21张PPT)
- 小学班主任工作经验交流ppt
- 新版现代西班牙语第二册答案
- 福州市《加强我市建筑模板工程施工质量管理若干规定》
- 水利监理规划(水利部)
- KTV包房音响系统设计方案
评论
0/150
提交评论