版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用时可以删除2——人事管理系统3人事管理管理系统某高校主要人员有:在职人员(行政人员、教师、一般员工)、退休人员和临其中,(1)添加删除功能:能根据学院人事的变动情况,添加删除记录;(2)查询功能:能根据编号和姓名进行查询;(3)编辑功能(高级):根据查询对相应的记录进行修改,并存储;(4)统计功能:能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数(硕士学位以上或者副教授以上)),统计(5)排序功能:按照年龄、来院时间进行排序;(6)保存功能:能对输入的数据进行相应的存储;输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程在内存中处理之后以覆盖的方式写入文件存贮,这样的方法在一定程度上提高的风险,另外当文件中的数据量很大时,这种方法也存在一定的难度,在本程新建数据文件(buildnewdata);添加记录(adddata);删除记录(deletedata);按工号搜索(searchbynumber);按姓名搜索(searchbyname);浏览全部数据(browseall);修改数据(modifythedata);排序功能(orderthevolume);统计功能(dataavolume);45{printf("\n\t\t\t\tMENU\n");5}{case0:build();break;/*********调用新建数据文件函数*******/case1:del();break;/*********调用删除数据函数***********/case2:add();break;/*********调用添加数据函数***********//*********调用按工号搜索函数*********//*********调用按姓名搜索函数*********//*********调用浏览数据函数************//*********调用修改数据函数************//*********调用排序函数函数************/case8:data();break;/*********调用统计函数****************/case9:exit(0);/*********退出*************************/}} (1)、新建数据文件模块:6龄、职务、职称、政治面貌、最高学别,均为字符串类型,在文件中以文本形式息,可以方便信息的管理;而数据读进内存个结构体包含了一个人员的全部信息,多的人员的信息组成了一个结构体数组。定义如下:6wkNsFILE*fp;,"w"))==NULL)file\n");forii<k;i++)}} (2)、追加模块:7记录,从键盘输入并逐条写入到原来的号码重复,重复时报告错误,重新输入。为的方式是用先把原来文件中的数据读入内的数据后面增加新的数据,操作完成后用写7FILE*fp;if(n==-1)}if((fp=fopen("worker00.txt","w"))==NULL)/*******将数据保存到文件********/} (3)修改模块:8记录较多,采用分屏显示,显示完所有人员的哪部分记录,根据用户选择修改相应的信息,然后保存修改后的结果;8{FILE*fp;{k=-1;{if((i!=0)&&(i%10==0))}}9{{k=i;ki}if(k==-1)}}wk[k]=s;}if(w0!=1&&w2==1)}}修改数据函数如下:}k}}} (4)删除模块:先分屏显示所有人员的记录,显示完所,由用户输入要删除的人员的号码,根据号码查找相应的记录并将结构体,并将结构体数组中将删除的后面的数据赋给前一个结构体,然后将相应数据写入文件并保存;YY{FILE*fpt;{k=-1;{if((i!=0)&&(i%10==0))printfnn}}{{k=i;ki}if(k==-1)}cy{for(j=i;j<=n;j++)wk[j]=wk[j+1];}}if(w0!=1&&w2==1)}} (5)、按号码搜索:查找对应的记录,并将其显示,查修改等功能,其中删除和修改功能可以通过调用{FILE*fp;{k=-1;foriin;i++){k=i;}if(k==-1){}}if(k!=-1);akbreakwk[p]=wk[p+1];}m(7)按姓名搜索。该模块的结构与按号码查询的结构基本相同;(8)浏览模块;的记录,考虑到记录较多,采用分屏显示的方式;{inti,j,n;{if((i!=0)&&(i%10==0))printfnn);} (9)、排序模块;者来院时间进行排序,总体结构是先用n=load()函数将文件中的数据调入内存,然后按照选择法排序,并将结果显FILE*fp;{for(j=i+1;j<=n;j++)e{s=wk[i];wk[i]=wk[j];wk[j]=s;}}}}{for(j=i+1;j<=n;j++)j{s=wk[i];wk[i]=wk[j];wk[j]=s;}}}}=NULL)printfnn);} (10)、统计模块满足符合条件的所有记录的个数,并将文件的保存,所以将文件用只读{}}该过程中调用了四个函数,numduty()(统计在职人员人数),numpm() (统计党员人数),numwm()(统计女工人数),hieduction()(统计高学历高职称人数),函数的具体定义见后面附录源程序。并通过在四个函数中调用menu()函数返回到主菜单。行结果的界面图::{menu()/********************菜单函数***************/{{printfnt\t\t\tMENU\n");{}}{}}build()/**************************新建文件*********************/FILE*fp;LLfor(i=0;i<k;i++)}}add()/*****************add***********************/FILE*fp;if(n==-1)}}input(inti)/*********************输入一个记录************************/}{FILE*fp;inti;/****************加载函数**********************/LLreturnNULL;}{for(i=0;!feof(fp);i++)}input_num(inti,intn)/*************输入号码************/{{for(j=0;wk[i].num[j]!='\0';j++){if((wk[i].num[j]<'0')||(wk[i].num[j]>'9'))}}if(w1!=1){{}}}}printf_back()/***************函数printf_back******************/{intw;ifw)}browse()/***********************浏览函数************************/{inti,j,n;{if((i!=0)&&(i%10==0))}}printf_face()/***************显示数据结构***********/{}printf_one(intI)/*******************显示一个记录*************************/{sj,wk[i].laiyansj,wk[i].leibie);}save(intn/**********************保存函数**********************/{FILE*fp;inti;returnNULL;}iif(wk[i].num!=0)}modify()/*****************编辑修改函数***************/{FILE*fp;{k=-1;{if((i!=0)&&(i%10==0))}}{{k=i;}if(k==-1)}}wk[k]=s;}if(w0!=1&&w2==1)}}modify_data(inti)/*********************修改数据函数***************/}}}}/*****************按姓名搜索**********************/{{k=-1;{k=i;}if(k==-1)}}if(k!=-1);{wkpwkp+1];}}}}snum()/*****************按学号搜索**********************/{FILE*fp;{k=-1;foriin;i++){k=i;}if(k==-1){}}if(k!=-1);{wkpwkp+1];}m}}order()/**********************排序函数******************************/{FILE*fp;{for(j=i+1;j<=n;j++)e{s=wk[i];wk[i]=wk[j];wk[j]=s;}}}}{for(j=i+1;j<=n;j++)j{s=wk[i];wk[i]=wk[j];wk[j]=s;}}}}w=NULL)}printfnn}del()/*****************删除记录函数***************/{FILE*fpt;{k=-1;{if((i!=0)&&(i%10==0))intfnn}}{b{k=i;}if(k==-1)}{for(j=i;j<=n;j++)wk[j]=wk[j+1];}}if(w0!=1&&w2==1)}}}data()/************统计函数******************/{}}numduty()/**************定义numduty函数*********************/{}numpm()/*************定义numpm函数******************/k++;}numwm()/***********定义numwm函数******************/k{k
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 城镇供水能力提升和保障工程环境影响报告书
- 一线三垂直的题目及答案
- 试题2026年国家公务员考试《申论》试题及答案解析-1
- 一年级找方块题目及答案
- 博物馆奇妙夜:历史与艺术为您开启新视野小学主题班会课件
- 智能仓储设备自动化升级改造计划
- 警惕交通安全警钟长鸣其中,小学主题班会课件
- 一体化污水处理设备安装工程施工方案及技术措施
- 样品检测报告提交确认通知函(4篇)
- 人力资源主管薪酬管理指导书
- 新教材统编版八年级语文下册期末考前划重点知识清单
- 2026北方化学工业股份有限公司技能人员招聘76人笔试模拟试题及答案详解
- 2026年新安全生产考试题及答案
- 16D303-2 常用风机控制电路图
- 2026深静脉血栓形成诊断和治疗指南(第四版)全面解读
- 2026年全国低压电工作业证复审考试题库(含答案)
- 江苏省凤凰出版传媒集团招聘笔试题库2026年
- 江苏省小学科学实验知识竞赛测试题(含答案)
- 无人驾驶汽车 PPT
- YY/T 0996-2015尿液有形成分分析仪(数字成像自动识别)
- FZ/T 01057.8-2012纺织纤维鉴别试验方法第8部分:红外光谱法
评论
0/150
提交评论