ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:60.54KB ,
资源ID:3362589      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3362589.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言职工档案管理系统.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言职工档案管理系统.docx

1、C语言职工档案管理系统C语言程序设计课程设计报告设计题目:职工档案管理系统设计专 业: 电子信息科学与技术学 号: 3080422* 班 级: 2008级1班 姓 名: * 指导教师 : * 2009 年 春季 学期 C语言课程设计任务书4题目:职工档案管理系统设计功能:职工档案管理系统设计,每个职工是一条记录,包括编号,姓名,性别,出生年月,所在部门,职称,工资级别、电话等。系统可实现以下功能:1、输入功能:输入每一位职工记录,将其信息存入文件中。2、显示功能:完成全部职工记录的显示。3、查找功能:完成按编号或姓名查找职工的相关记录,并显示。分步实施:1、初步完成总体设计,搭好框架,确定人机

2、对话的界面,确定函数个数。2、建立一个文件,将每位职工的信息写入文件中并能显示于屏幕上。3、完成上述查找(编号,姓名,性别等)、修改等功能。4、进一步要求,修改记录设置密码操作。要求:1、用C语言实现程序设计;2、利用结构体数组实现职工信息的数据结构设计;3、系统的各个功能模块要求用函数的形式实现;4、界面友好(良好的人机交互),程序加必要的注释。课程设计实验报告要求:1、预习报告:题目、课程设计任务、数据结构、程序的总体设计(算法)、模块划分 。2、实验总结报告:流程图、主要源程序代码(需打印)、测试情况及调试中问题与解决方案、小结等。总评成绩:指导教师:附件:主要源程序代码(职工档案管理系

3、统)char sex;/性别f为女m为男#include #include #include #include #define N 100 typedef struct employee/职工基本情况 char num6;/编号 char name8;/姓名 char birth8;/出生年月 char workplace10;/工作部门 char salarylevel8;/工资级别 char position8;/职称 char tel16;/电话 emN; /*主要函数*/void input();/输入职工信息void display();/显示职工信息void passWord();

4、/设置密码void save();/保存职工信息void change();/修改职工信息/*查找函数*/void search();void searchByname();/按姓名查找void searchBynum();/按编号查找int total=0;/定义total来记数记录数int i=0; void main() int choice; do printf( n);/系统欢迎界面 printf( 欢迎进入职工管理系统 n); printf( n); printf(Coyote 2009年6月 n); printf( n); printf( 请您选择操作类型: n); printf

5、(= n); printf( 1.输入职工信息 n);/用户选择 printf( 2.显示职工信息 n); printf( 3.查找职工信息 n); printf( 4.修改职工信息 n); printf( 0.退出系统 n); printf(= n); scanf(%d,&choice); switch(choice) case 1:input();break; case 2:display();break; case 3:search();break; case 4:change();break; case 0: printf(谢谢使用!再见! ); exit(0);/退出系统 defau

6、lt: printf(输入有错误请重新输入: ); return; while(1);/当为真值时执行do循环 void input() char j=0;/初始化j值为空 do total+; i+; printf(第%d个职工:n,i); printf(请您输入编号: );/输入编号 scanf(%s,emi.num); printf(请您输入姓名: );/输入姓名 scanf(%s,emi.name); printf(请您输入性别以(m男f女): );/输入性别 getchar(); scanf(%c,&emi.sex); printf(请您输入出生年月(格式如:1990.03): );

7、/输入出生年月 scanf(%s,emi.birth); printf(请您输入工作部门: );/输入工作部门 scanf(%s,emi.workplace); printf(请您输入职位: );/输入职位 scanf(%s,emi.position); printf(请您输入工资级别: );/输入工资级别 scanf(%s,emi.salarylevel); printf(请您输入联系电话: );/输入联系电话 scanf(%s,emi.tel); printf(是否继续输入?(y/n):); getchar(); j=getchar(); while(j!=y&j!=n) printf(输

8、入不合法!n是否继续输入?(y/n):); getchar(); j=getchar(); while(j=y); save();/保存职工记录 printf(输入完毕,请按任意键返回n ); getch();/conio库函数里的,结收键盘输入任意 return; void save() FILE *fp; int i=0; if(fp=fopen(employee.txt,ab)=NULL) printf(cannot open filen); return; for(i=1;i=total;i+) if(fwrite(&emi,sizeof(struct employee),1,fp)!

9、=1) printf(file write errorn); fclose(fp);void display()/显示所有职工信息 FILE *fp; int i; if(fp=fopen(employee.txt,rb)=NULL) printf(文件打开失败或未创建文件!n); return; printf(所有职工信息如下: n);/输出所有职工信息 printf(n=n); printf(编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n); printf(=n); for(i=1;fread(&emi,sizeof(struct employee),1,fp)!=0

10、;i+)/读完所有数据printf(%-6s%8s%6c%12s%10s%8s%8s%18sn,emi.num,emi.name,emi.sex,emi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); printf(完毕,请按任意键返回n ); getch(); fclose(fp); return;void search()int choice; printf(请您选择查找方式:n); printf(1.按编号查找n 2.按姓名查找 n); scanf(%d,&choice); switch(choice) case 1:

11、searchBynum();break; case 2:searchByname();break; default:printf(输入有误,请重输入:n); void searchBynum() FILE *fp; int i; char numb6; if(fp=fopen(employee.txt,r)=NULL) printf(不能够打开这个文件,请按任意键返回); return; printf(请您输入要查找的人的编号: ); scanf(%s,numb); for(i=0;iN;i+)/在所有信息中查找符合要求的职工信息 if(strcmp(emi.num,numb)=0) /找到并

12、显示该职工记录 printf(以下是您要查询的人的信息:n ); printf(n=n);printf(编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n); printf(=n);printf(%-6s%8s%6c%12s%10s%8s%8s%18sn,emi.num,emi.name,emi.se x,emi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); printf(查找完毕,请按任意键返回n ); getch(); fclose(fp); return; printf(没有这样的人,请按任意键返回

13、n); getch(); fclose(fp); return;void searchByname() FILE *fp; int i=0; char nam8; if(fp=fopen(employee.txt,rb)=NULL) printf(不能够打开这个文件,请按任意键返回n); return; printf(请您输入要查找的人的姓名: ); scanf(%s,nam); for(i=0;i0); if(flag!=1) printf(您的输入次数已到!再见!n ); main();/返回主函数(主菜单) void change() FILE *fp; int i; char newn

14、um6;/新编号 char newname8;/新名字 char newsex;/新性别 char newbirth8;/新出生年月 char newworkplace10;/新工作部门 char newposition8;/新职称 char newsalarylevel8;/新工资水平 char newtel16;/新电话号码 char nam8; int choice; printf(请您输入密码:); passWord();/调用密码函数 printf(请您输入要修改的人的姓名: ); scanf(%s,&nam); if(fp=fopen(employee.txt,w+)=NULL)

15、printf(不能够打开这个文件 ); return; for(i=1;i=N;i+) if(strcmp(nam,emi.name)=0) printf(这是您要修改的人的信息:n); printf(n= =n); printf(编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n); printf(=n); printf(%-6s%8s%6c%12s%10s%8s%8s%18sn,emi.num,emi.name,emi.sex,e mi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); printf(-n

16、 ); printf(请您选择要修改的部分: n); printf(=n ); printf(1.修改编号n ); printf(2.修改姓名n ); printf(3.修改性别n ); printf(4.修改出生年月n ); printf(5.修改所在部门n ); printf(6.修改职位n ); printf(7.修改工资级别n ); printf(8.修改联系电话n ); printf(0.返回主菜单n ); printf(=n ); scanf(%d,&choice); switch(choice) case 1: printf(请您输入新的编号: ); scanf(%s,newnu

17、m); strcpy(emi.num,newnum); break; case 2: printf(请您输入新的姓名: ); scanf(%s,newname); strcpy(emi.name,newname); break; case 3: printf(请您输入新的性别: ); getchar(); scanf(%c,&newsex); emi.sex=newsex; break; case 4: printf(请您输入新的出生年月: ); scanf(%s,newbirth); strcpy(emi.birth,newbirth); break; case 5: printf(请您输入

18、新的工作部门: ); scanf(%s,newworkplace); strcpy(emi.workplace,newworkplace); break; case 6:printf(请您输入新的职位: ); scanf(%s,newposition); strcpy(emi.position,newposition); break; case 7:printf(请您输入新的工资级别: ); scanf(%s,newsalarylevel); strcpy(emi.salarylevel,newsalarylevel); break; case 8:printf(请您输入新的联系电话: );

19、scanf(%s,newtel); strcpy(emi.tel,newtel); break; case 0: printf(返回主菜单 ); main();/返回 default :printf(输入有错误!请重新输入!);return; printf(n=n);printf(编号 姓 名 性别 出生年月 所在部门 职 称 工资级别 联系电话n); printf(=n);printf(%-6s%8s%6c%12s%10s%8s%8s%18sn,emi.num,emi.name,emi.sex,e mi.birth,emi.workplace,emi.position,emi.salarylevel,emi.tel); save();/保存修改信息 break; else if(i=N) printf(没有这个职工,为了安全,请再次输入密码!n); change(); printf(n=n); printf(1.继续修改n2.返回主菜单n); printf(=n); printf(n请您选择:); scanf(%d,&choice); switch(choice) case 1:change();break; case 2:main();break; default:printf(输入不合法!返回n);main();

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

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