C语言课程设计人事管理管理系统ⅡWord文件下载.docx

上传人:b****0 文档编号:13205019 上传时间:2022-10-08 格式:DOCX 页数:28 大小:168.63KB
下载 相关 举报
C语言课程设计人事管理管理系统ⅡWord文件下载.docx_第1页
第1页 / 共28页
C语言课程设计人事管理管理系统ⅡWord文件下载.docx_第2页
第2页 / 共28页
C语言课程设计人事管理管理系统ⅡWord文件下载.docx_第3页
第3页 / 共28页
C语言课程设计人事管理管理系统ⅡWord文件下载.docx_第4页
第4页 / 共28页
C语言课程设计人事管理管理系统ⅡWord文件下载.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

C语言课程设计人事管理管理系统ⅡWord文件下载.docx

《C语言课程设计人事管理管理系统ⅡWord文件下载.docx》由会员分享,可在线阅读,更多相关《C语言课程设计人事管理管理系统ⅡWord文件下载.docx(28页珍藏版)》请在冰豆网上搜索。

C语言课程设计人事管理管理系统ⅡWord文件下载.docx

一.需求分析:

根据题目要求,人事信息是存放在文件中的,所以应该提供相应的文件的输入输出的功能,在程序中应该有添加删除,查询,编辑,统计,排序,保存等程序实现相应的操作,另外菜单式的选择方式选择程序的功能也是必须需的。

另外程序中要求存储的模块,采用的方式均为将原文件中的所有数据读入内存,在内存中处理之后以覆盖的方式写入文件中重新储存,这样的方法容易理解、容易编写,但当文件中的数据量很大时,这种方法也存在一定的难度,在本程序中将RS定为100,也即最多可储存的职工人数为100;

二总体设计:

根据以上需求分析,将程序分成以下几个模块:

1浏览:

****浏览文件(0)

2删除

****删除记录

(1)

3查询

****按名称查询

(2)

****按编号查询(3)

4编辑

****查询名称编辑信息(4)

****查询编号编辑信息(5)

5统计

****统计在职人数(6)

****统计党员人数(7)

****统计女工人数(8)

****统计硕士以上学历人数(9)

****统计副教授以上职称人数(10)

6排序

****按年龄进行排序(11)

****按来院时间进行排序(12)

7保存

****将输入的记录进行保存(13)

三详细设计;

1、主函数:

主函数设计的比较简单,只提供输入、处理和输出部分的函数调用。

其中各功能模块用菜单方式选择。

其流程图如下

程序

voidmain()

{do

{intn;

puts("

****************************************************\n"

);

****************人事管理系统************************\n"

**请选择以下选项后面的数字输入以确定您要进行的操作**\n"

选项:

"

浏览:

****浏览文件(0)"

删除"

****删除记录

(1)"

查询"

****按名称查询

(2)"

****按编号查询(3)"

编辑"

****查询名称编辑信息(4)"

****查询编号编辑信息(5)"

统计"

****统计在职人数(6)"

****统计党员人数(7)"

****统计女工人数(8)"

****统计硕士以上学历人数(9)"

****统计副教授以上职称人数(10)"

排序"

****按年龄进行排序(11)"

****按来院时间进行排序(12)"

保存"

****将输入的记录进行保存(13)"

退出"

****退出(14)"

printf("

请输入选项号:

"

scanf("

%d"

&

n);

switch(n)

{case0:

browse();

break;

case1:

dele();

case2:

searname();

case3:

searnum();

case4:

channame();

case5:

channum();

case6:

sumzzrs();

case7:

sumdyrs();

case8:

sumngrs();

case9:

sumssysxlrs();

case10:

sumfjsyszhichers();

case11:

sortage();

case12:

sortlysj();

case13:

save();

case14:

return;

default:

输入错误"

}

}while

(1);

}

2、各功能设计模块

(1)浏览模块

该模块的功能是显示文件的所有信息,流程图如下

voidbrowse()

{inti=0,j;

if((fp=fopen("

renshi.txt"

"

r"

))==NULL)

{printf("

cannotopenthisfile\n"

return;

while(!

feof(fp))

{fscanf(fp,"

%s%s%s%d%s%d%s%d%s%d%s"

per[i].num,per[i].name,per[i].sex,&

per[i].age,per[i].zhiwu,&

per[i].zhiche,per[i].zzmm,&

per[i].zgxl,per[i].rzsj,&

per[i].lysj,per[i].rylb);

i++;

\n\n当前文件内容是:

\n\n"

for(j=0;

j<

i;

j++)

%s%s%s%d%s%d%s%d%s%d%s\n"

per[j].num,per[j].name,per[j].sex,per[j].age,per[j].zhiwu,per[j].zhiche,per[j].zzmm,per[j].zgxl,per[j].rzsj,per[j].lysj,per[j].rylb);

fclose(fp);

\n"

\n\n\npressanykeytocontinue\n\n\n"

getchar();

(2)删除模块

该模块的功能是根据编号删除记录的信息,删除空行,后面的前移,浏览。

流程图如下

voiddele()

{inti=0,j,k=0;

charnum[10];

请输入您要删除的记录的编号:

%s"

num);

w"

{if(strcmp(per[j].num,num)!

=0)

fprintf(fp,"

trim();

browse();

(3)按名称查询模块

该模块的功能是根据名字查询记录。

流程如下

voidsearname()

charname[8];

请输入您要查询的记录的姓名:

name);

a+"

))==0)

您要的信息如下:

{if(strcmp(per[j].name,name)==0)

k++;

if(k==0)

没有您要的信息"

(4)按编号查询模块

该模块功能是根据记录编号查询记录。

流程路如下

(5)

voidsearnum()

请输入您要查询的记录的编号:

r+"

%s%s%s%d%s%d%s%d%s%d

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 动物植物

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1