C语言课程设计-人事管理管理系统Ⅱ12111.docx
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《C语言课程设计-人事管理管理系统Ⅱ12111.docx》由会员分享,可在线阅读,更多相关《C语言课程设计-人事管理管理系统Ⅱ12111.docx(34页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、人事管理管理系统要求某高校主要要人员有:在职人员员(行政人人员、教师师、一般员员工)、退退休人员和和临时工。现现在,需要要存储这些些人员的人人事档案信信息:编号号、姓名、性性别、年龄龄、职务、职职称、政治治面貌、最最高学历、任任职时间、来来院时间、人人员类别。其其中,人员员编号唯一一,不能重重复。(1) 添加删除功功能:能根根据学院人人事的变动动情况,添添加删除记记录;(2) 查询功能:能根据编编号和姓名名进行查询询;(3) 编辑功能(高高级):根根据查询对对相应的记记录进行修修改,并存存储;(4) 统计功能:能根据多多种参数进进行人员的的统计(在在职人数、党党员人数、女女工人数、高高学历高职
2、职称人数(硕硕士学位以以上或者副副教授以上上),统统计要求同同时显示被被统计者的的信息;(5) 排序功能:按照年龄龄、来院时时间进行排排序;(6) 保存功能:能对输入入的数据进进行相应的的存储;一.需求分分析:根据题目要要求,人事事信息是存存放在文件件中的,所所以应该提提供相应的的文件的输输入输出的的功能,在在程序中应应该有添加加删除,查查询,编辑辑,统计,排排序,保存存等程序实实现相应的的操作,另另外菜单式式的选择方方式选择程程序的功能能也是必须须需的。另另外程序中中要求存储储的模块,采采用的方式式均为将原原文件中的的所有数据据读入内存存,在内存存中处理之之后以覆盖盖的方式写写入文件中中重新
3、储存存,这样的的方法容易易理解、容容易编写,但但当文件中中的数据量量很大时,这这种方法也也存在一定定的难度,在在本程序中中将RS定定为1000,也即最最多可储存存的职工人人数为1000;二总体设计计:根据以上需需求分析,将将程序分成成以下几个个模块:1浏览: *浏览文件件(0)2 删除 *删除记录录(1) 33查询 *按名称查查询(2) *按编号查查询(3)4 编辑 *查询名称称编辑信息息(4) *查询编号号编辑信息息(5)5 统计 *统计在职职人数(66) *统计党员员人数(77) *统计女工工人数(88) *统计硕士士以上学历历人数(99) *统计副教教授以上职职称人数(10)6 排序 *
4、按年龄进进行排序(11) *按来院时时间进行排排序(122)7 保存 *将输入的的记录进行行保存(113)三 详细设设计;1、 主函数:主函数设计计的比较简简单,只提提供输入、处处理和输出出部分的函函数调用。其其中各功能能模块用菜菜单方式选选择。其流流程图如下下程序开始显示一系列功能根据n的值调用个功能模块函数结束输入n,判断是否是014NYvoid mainn() doo innt n; puuts(*n); puuts(*人事管理理系统*nn); puuts(*请选选择以下选选项后面的的数字输入入以确定您您要进行的的操作*n); puuts(选项:); puuts(浏览:); puuts(
5、 *浏览文文件(0); puuts( 删除); puuts( *删除记记录(1); puuts( 查询); puuts( *按名称称查询(22); puuts( *按编号号查询(33); puuts( 编辑); puuts( *查询名名称编辑信信息(4); puuts( *查询编编号编辑信信息(5); puuts( 统计); puuts( *统计在在职人数(6); puuts( *统计党党员人数(7); puuts( *统计女女工人数(8); puuts( *统计硕硕士以上学学历人数(9); puuts( *统计副副教授以上上职称人数数(10); puuts( 排序); puuts( *按年龄
6、龄进行排序序(11); puuts( *按来院院时间进行行排序(112); puuts( 保存); puuts( *将输入入的记录进进行保存(13); puuts( 退出); puuts( *退出(14); prrintff(请输输入选项号号: ); sccanf(%d,&n); swwitchh(n) casse 0:browwse();breeak; casse 1:delee();bbreakk; casse 2:searrnamee();bbreakk; casse 3:searrnum();brreak; casse 4:channnamee();bbreakk; casse 5:c
7、hannnum();brreak; casse 6:sumzzzrs();brreak; casse 7:sumddyrs();brreak; casse 8:sumnngrs();brreak; casse 9:sumsssysxxlrs();brreak; casse 100:summfjsyyszhiicherrs();breaak; casse 111:sorrtagee();bbreakk; casse 122:sorrtlyssj();breaak; casse 133:savve();breaak; caase 114:reeturnn; deefaullt: pprinttf(
8、输输入错误); whille(1);2、 各功能设计计模块(0) 浏览模块该模块的功功能是显示示文件的所所有信息,流流程图如下下显示所有信息按任意键显示下一屏按任意键继续程序void browwse() innt i=0,j; iff(fpp=foppen(rensshi.ttxt,r)=NNULL) priintf(cannnot openn thiis fiilenn); retturn; whhile(!feoof(fpp) fsccanf(fp,%s %s %ss %d %s %d %ss %d %s %d %ss,peeri.numm,perri.namee,perri.sex,&p
9、erri.age,peri.zzhiwuu,&peeri.zhiiche,peri.zzzmm,&perri.zgxll,perri.rzsjj,&peeri.lyssj,peeri.ryllb); i+; prrintff(nnn当前前文件内容容是:nnn); foor(j=0;ji;j+) priintf(%s %s %s %dd %s %d %s %dd %s %d %sn,perrj.num,perj.nname,perj.ssex,pperjj.agge,peerj.zhiiwu,pperjj.zhhichee,perrj.zzmmm,perrj.zgxll,perrj.rzsjj,
10、perrj.lysjj,perrj.rylbb); fcclosee(fp); prrintff(nn); prrintff(nnnnnpresss anny keey too conntinuuennn); geetchaar(); prrintff(nn);(1) 删除模块该模块的功功能是根据据编号删除除记录的信信息,删除除空行,后后面的前移移,浏览。流流程图如下下开始输入要删除记录的编号是否找到记录?显示没有找到删除记录YN程序void delee() innt i=0,j,k=0; chhar nnum110; prrintff(请输输入您要删删除的记录录的编号: ); sccanf(
11、%s,numm); iff(fpp=foppen(rensshi.ttxt,r)=NNULL) priintf(cannnot openn thiis fiilenn); retuurn; whhile(!feoof(fpp) fsccanf(fp,%s %s %ss %d %s %d %ss %d %s %d %ss,peeri.numm,perri.namee,perri.sex,&perri.age,peri.zzhiwuu,&peeri.zhiiche,peri.zzzmm,&perri.zgxll,perri.rzsjj,&peeri.lyssj,peeri.ryllb); i+;
12、fcclosee(fp); iff(fpp=foppen(rensshi.ttxt,w)=NNULL) priintf(cannnot openn thiis fiilenn); retturn; foor(j=0;ji;j+) if(strccmp(pperjj.nuum,nuum)!=0) fpprinttf(fpp,%ss %s %s %d %ss %d %s %d %ss %d %snn,peerj.numm,perrj.namee,perrj.sex,perj.aage,pperjj.zhhiwu,perj.zzhichhe,peerj.zzmmm,peerj.zgxxl,peerj
13、.rzssj,peerj.lyssj,peerj.ryllb); fcclosee(fp); trrim(); brrowsee(); prrintff(); geetchaar();(2) 按名称查询询模块该模块的功功能是根据据名字查询询记录。流流程如下开始输入要查询记录的名字是否找到记录?显示没有找到显示记录YN程序void searrnamee() innt i=0,j,k=0; chhar nname8; prrintff(请输输入您要查查询的记录录的姓名: ); sccanf(%s,namme); iff(fpp=foppen(rensshi.ttxt,a+)=0) priintf(
14、cannnot openn thiis fiilenn); retturn; whhile(!feoof(fpp) fsccanf(fp,%s %s %ss %d %s %d %ss %d %s %d %ss,peeri.numm,perri.namee,perri.sex,&perri.age,peri.zzhiwuu,&peeri.zhiiche,peri.zzzmm,&perri.zgxll,perri.rzsjj,&peeri.lyssj,peeri.ryllb); i+; prrintff(您要要的信息如如下:nn); foor(j=0;ji;j+) if(strccmp(pperj
15、j.naame,nname)=0) priintf(%s %s %s %dd %s %d %s %dd %s %d %sn,perrj.num,perj.nname,perj.ssex,pperjj.agge,peerj.zhiiwu,pperjj.zhhichee,perrj.zzmmm,perrj.zgxll,perrj.rzsjj,perrj.lysjj,perrj.rylbb); k+; iff(k=0) priintf(没有您您要的信息息); retturn; fcclosee(fp); browwse(); prrintff(); geetchaar();(3) 按编号查询询模块该
16、模块功能能是根据记记录编号查查询记录。流流程路如下下开始输入要查询记录的编号是否找到记录?显示没有找到显示记录YN(4)程序void searrnum() innt i=0,j,k=0; chhar nnum110; prrintff(请输输入您要查查询的记录录的编号: ); sccanf(%s,numm); iff(fpp=foppen(rensshi.ttxt,r+)=NULLL) priintf(cannnot openn thiis fiilenn); retturn; whhile(!feoof(fpp) fsccanf(fp,%s %s %ss %d %s %d %ss %d %s
17、 %d %ss,peeri.numm,perri.namee,perri.sex,&perri.age,peri.zzhiwuu,&peeri.zhiiche,peri.zzzmm,&perri.zgxll,perri.rzsjj,&peeri.lyssj,peeri.ryllb); i+; prrintff(您要要的信息如如下:nn); foor(j=0;ji;j+) if(strccmp(pperjj.nuum,nuum)=0) prinntf(%s %s %ss %d %s %d %ss %d %s %d %ssn,perj.nnum,pperjj.naame,pperjj.seex,p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 人事管理 管理 系统 12111
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内