c语言程序设计企业员工管理系统方案完整篇docWord下载.docx
- 文档编号:20809285
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:9
- 大小:17.62KB
c语言程序设计企业员工管理系统方案完整篇docWord下载.docx
《c语言程序设计企业员工管理系统方案完整篇docWord下载.docx》由会员分享,可在线阅读,更多相关《c语言程序设计企业员工管理系统方案完整篇docWord下载.docx(9页珍藏版)》请在冰豆网上搜索。
输入该厂现有员工信息并保存与文件中,方便日后进行排序,更新,统计,打印等操作。
输出模块:
将所有员工信息,或所需员工信息输出于屏幕上,用于打印或查询员工信息。
更新模块:
此模块又分为删除,添加,修改三个模块。
删除模块:
对已退休或离开该厂的员工进行删除操作。
添加模块:
添加新入厂的员工信息并保存起来。
修改模块:
找到该员工并,选择所要修改的选项。
排序模块:
本程序只对员工年龄进行从小到大排序。
查询模块:
此模块分为按姓名,年龄,工作查询。
姓名查询模块:
输入要查找的姓名,找到就输出其信息。
找不到则输出无此人。
年龄查询模块:
输入要查找的年龄,找到就输出其信息。
工作查询模块:
输入要查找的工作,找到就输出其信息。
统计模块:
此模块分为,统计年龄,性别和工作。
统计年龄:
输入要统计的年龄,查找并输出,若无此年龄则输出暂无此年龄员工。
统计性别:
输入要统计的性别,查找并输出,若无此性别则输出暂无此
性别员工。
统计工作:
输入要统计的工作,查找并输出,若无此工作则输出暂无此工作员工。
保存模块:
将现有信息保存于文件中,以防丢失。
系统模块图
五、详细设计及运行结果
流程图,函数之间相互调用的图示,程序设计及编码,运行结果。
主函数:
是
i=0
否
c语言程序设计企业员工管理系统方案1第2页
六、调试情况,设计技巧及体会
1、对自己设计进行评价,指出合理和不足之处,提出改进的方案。
自我评价:
本人自我觉得此系统还不错,程序简洁明了,功能齐全,而且充分从用户的角度进行编排,易于执行。
经本人多次调试终于出现0个错误与警告,而且从未有过死循环,用户一旦输错,立即会有提示,此程序相当的健壮。
因本人定义了全局变量,使操作更加简单易行,使用了结构体数组,避开链表那样的复杂操作。
但不足之处便是没有链表那样节省内存。
如有机会下次可能会用链表。
2、在设计过程中的感受。
在把字符一个个敲上屏幕时,坐在那一动不动相当的枯燥,一想到过会儿就能看到自己亲自编的程序,就只能忍吧。
当看到模块一个个运行后与预料中的完全一样时,郁闷的心情立马被一种成就感替代。
就想赶紧编完看看自己的杰作。
然而也会遇到自己解决不了的问题,就只能去求老师了。
这次最大的感受就是当你竭尽全力的干一件事时,就没有能挡住你的困难。
七、参考文献
C语言课本。
八、附录:
源代码
#include
#defineMAX100
charfilename[20];
/*文件名*/
FILE*fp;
intn;
/*当前该厂人数*/
structdate/*时间结构体*/
{intyear;
intmouth;
intday;
};
structperson/*员工信息结构体*/
{charname[10];
/*姓名*/
intage;
/*年龄*/
charjob[10];
/*工作*/
charsex[10];
/*性别*/
charaddress[20];
/*地址*/
charphone[10];
/*电话*/
structdatein_time;
/*入厂时间*/
}t,worker[MAX];
/*录入模块*/
voidinput()
{inti;
clrscr();
printf("
\n\n请输入文件名\n"
);
scanf("
%s"
filename);
开始输入员工的信息\n"
\n请输入现有员工人数\n"
%d"
&
n);
if((fp=fopen(filename,"
w"
))==NULL)
{printf("
不能建立!
\n"
exit();
}
for(i=0;
i{printf("
第%d个人的信息:
i+1);
姓名\n"
worker[i].name);
年龄\n"
worker[i].age);
工作\n"
worker[i].job);
性别\n"
worker[i].sex);
地址\n"
worker[i].address);
电话\n"
worker[i].phone);
入厂年\n"
worker[i].in_time.year);
入厂月\n"
worker[i].in_time.mouth);
入厂日\n"
worker[i].in_time.day);
录入完毕,按任意键返回主菜单\n"
getch();
ifprintf(fp,"
%s%d%s%s%s%s%d-%d-%d\n"
worker[i].name,worker[i].age,worker[i].job,worker[i].sex,worker[i].address,worker[i].phone,worker[i].in_time.year,worker[i].in_time.mouth,worker[i].in_time.day);
fclose(fp);
/*输出模块*/
voidoutput()
{inti;
r"
暂时未有任何信息,请按任意键返回主菜单进行信息录入\n"
该厂的员工信息:
姓名\t年龄\t工作\t性别\t地址\t电话\t入厂时间\n"
i{fscanf(fp,"
%s%d%s%s%s%s%d-%d-%d"
worker[i].name,&
worker[i].age,worker[i].job,worker[i].sex,worker[i].address,worker[i].phone,&
worker[i].in_time.year,&
worker[i].in_time.mouth,&
%s\t%d\t%s\t%s\t%s\t%s\t%d-%d-%d
worker[i].name,worker[i].age,worker[i].job,worker[i].sex,worker[i].address,worker[i].phone,worker[i].in_time.year,worker[i].in_time.mouth,worker[i].in_time.day);
输出完毕,按任意键返回主菜单\n"
/*保存模块*/
voidsave()
))==NULL)/*打开文件*/
\n不能打开该文件!
"
/*读取信息*/
voidread_message()
输入文件名\n"
ifscanf(fp,"
worker[i].age,worker[i].job,worker[i].sex,worker[i].address,worker[i].phone,&
worker[i].in_time.year,&
/*修改模块*/
voidmodify()
{inti,flag,choice;
charch,namekey[10];
flag=0;
开始修改\n"
do
{
请输入要修改的员工姓名\n"
namekey);
i{if(strcmp(worker[i].name,namekey)==0)
是否修改此人(y/n)\n"
getchar();
/*接收回车*/
ch=getchar();
if(ch=='
y'
)
****您要修改那一项?
***\n\n"
***1,姓名***\n\n"
***2,年龄***\n\n"
***3,工作***\n\n"
***4,性别***\n\n"
***5,地址***\n\n"
***6,电话***\n\n"
***7,入厂年***\n\n"
***8,入厂月***\n\n"
***9,入厂日***\n\n"
请选择(1-9)\n"
choice);
switch(choice)
{case1:
printf("
输入修改后的姓名\n"
break;
case2:
输入修改后的年龄\n"
case3:
输入修改后的工作\n"
case4:
输入修改后的性别\n"
case5:
输入修改后的地址\n"
case6:
输入修改后的电话\n"
case7:
输入修改后的入厂年\n"
case8:
输入修改后的入厂月\n"
case9:
输入修改后的入厂日\n"
修改后的信息\n"
elsebreak;
else
if(i==n)printf("
此人不存在\n"
\n是否继续输入(y/n)\n"
继续\n"
flag=1;
elseflag=0;
}while(flag==1);
修改完毕,按任意键返回主菜单\n"
);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 企业 员工 管理 系统 方案 完整 doc