职工管理系统c语言课程设计报告精品资料.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语言课程设计报告精品资料.docx》由会员分享,可在线阅读,更多相关《职工管理系统c语言课程设计报告精品资料.docx(67页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、上海应用技术学院 课程设计专用纸上海应用技术学院课程设计报告课程名称 程序设计语言c课程设计 设计题目 职工信息管理系统 姓 名 陈学文 专业班级 13104009 学号1310400901 组别 无 同 组 者 无 指导教师 余艳芳 日期 2014.6.302014.7.11 成绩 1 目的及要求本课程的设计目的:1. 巩固和加深学生对C语言课程的基本知识的理解和掌握;2. 掌握C语言编程和程序调试的基本技能;3. 利用C语言进行基本的软件设计;4. 掌握书写程序设计说明文档的能力5. 提高运用C语言解决实际问题的能力。本课程的设计要求:1.分析课程设计题目(即:职工信息管理系统)的要求;2
2、.写出详细设计说明;3.编写程序代码,调试程序使其能正确运行;4.设计完成的软件要便于操作和使用,有整齐、美观的使用界面;5.设计完成后提交课程设计报告和源代码文件的电子文档。2 课程设计内容说明2.1 功能简介职工信息管理系统的主要功能包括:(1)机构管理(2)信息录入(3)查询输出(4)工资管理(5)用户管理(6)人员类别管理。公司机构包括董事会、经理、人事部、市场部、营销部、财务部、销售部、售后服务部信息录入信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话(职工号不重复),这个功能的实现用C语言的文件保存;其次还有信息的查询、排序、添加、删除。这个系统可以输入信息,保存到文件里,
3、再从文件里调出来,使之显示在屏幕上,进行删除、添加等对信息的修改。2.2设计流程职工管理系统功能流程图公共管理系统主菜单退出用户管理查询输出信息录入机构管理姓名性别年龄董事会市场部财务部人事部经理职工号工资住址部门电话售后服务部营销部销售部编写各个构成主界面功能的函数,其中各个函数代码如下:1.主菜单函数,主界面的显示void menu() printf( *欢迎进入职工信息管理系统*n); printf( 1.录入职工信息); printf( 2.浏览部门信息n); printf( 3.查询职工信息); printf( 4.删除职工信息n); printf( 5.添加职工信息); print
4、f( 6.修改职工信息n); printf( 7.退出n); printf(n);2.录入函数,为整个库的记录,第二次录入时将清空之前数据,如需添加需点击添加函数void input() int i,m; printf(请输入需要创建信息的职工人数(1-1000):n); scanf(%d,&m); for (i=0;im;i+) printf(请输入职工号:); scanf(%d,&emi.num); printf(请输入姓名: ); scanf(%s,emi.name); getchar(); printf(请输入性别(f-女 m-男): ); scanf(%c,&emi.sex); ge
5、tchar(); printf(请输入年龄: ); scanf(%d,&emi.age); printf(请输入学历: ); scanf(%s,emi.xueli); getchar(); printf(请输入部门: ); scanf(%s,emi.dep); getchar(); printf(请输入工资: ); scanf(%d,&emi.wage); printf(请输入住址: ); scanf(%s,emi.addr); getchar(); printf(请输入电话: ); scanf(%s,emi.tel); printf(n); printf(n创建完毕!n); save(m);
6、 3. 保存文件函数void save(int m) int i; FILE*fp; if (fp=fopen(employee_list,wb)=NULL) printf (cannot open filen); exit(0); for (i=0;im;i+) /*将内存中职工的信息输入到磁盘文件中去*/ if (fwrite(&emi,sizeof(struct employee),1,fp)!=1) printf(file write errorn); fclose(fp); 4. 导入函数int load() FILE*fp; int i=0; if(fp=fopen(employe
7、e_list,rb)=NULL) printf (cannot open filen); exit(0); else do fread(&emi,sizeof(struct employee),1,fp); i+; while(feof(fp)=0); fclose(fp); return(i-1); 5. 浏览函数void display() int i; int m=load(); printf(n 职工号t姓名tt性别tt年龄tt部门 n); for(i=0;im;i+) /*m为输入部分的职工人数*/ printf(n %3d%16s%16c%16d%16sn,emi.num,emi.
8、name,emi.sex,emi.age,emi.dep); printf(n 学历tt工资tt住址tt电话 n); for(i=0;im;i+) /*m为输入部分的职工人数*/ printf(n %3s%14d%16s%16sn,emi.xueli,emi.wage,emi.addr,emi.tel); 6. 删除函数void del() int m=load(); int i,j,n,t,flag; char name20; printf(n 原来的职工信息:n); display(); printf(n); printf(请输入要删除的职工的姓名:n); scanf(%s,name);
9、for(flag=1,i=0;flag&im;i+) if(strcmp(emi.name,name)=0) printf(n已找到此人,原始记录为:n); printf( 职工号t姓名tt性别tt年龄tt部门 n); printf(n %3d%16s%16c%16d%16sn,emi.num,emi.name,emi.sex,emi.age,emi.dep); printf(n 学历tt工资tt住址tt电话 n); printf(n %3s%14d%16s%16sn,emi.xueli,emi.wage,emi.addr,emi.tel); printf(n确实要删除此人信息请按1,不删除请
10、按0n); scanf(%d,&n);if(n=1) for(j=i;jm-1;j+) strcpy(emj.name,emj+1.name); emj.num=emj+1.num; emj.sex=emj+1.sex; emj.age=emj+1.age; strcpy(emj.xueli,emj+1.xueli); emj.wage=emj+1.wage; strcpy(emj.addr,emj+1.addr); strcpy(emj.tel,emj+1.tel); flag=0; if(!flag) m=m-1; else printf(n对不起,查无此人!n); printf(n 浏览
11、删除后的所有职工信息:n); save(m); /*调用保存函数*/ display(); /*调用浏览函数*/ printf(n继续删除请按1, 不再删除请按0n); scanf(%d,&t); switch(t) case 1:del();break; case 0:break; default :break; 7. 添加函数 void add() FILE*fp; int n; int count=0; int i; int m=load(); printf(n 原来的职工信息:n); display(); printf(n); fp=fopen(emploee_list,a); pri
12、ntf(请输入想增加的职工数:); scanf(%d,&n); for (i=m;i=1&t=4) flag=1; break; else flag=0; printf(您输入有误,请重新选择!); while(flag=0); while(flag=1) switch(t) case 1:printf(按职工号查询n);search_num();break; case 2:printf(按学历查询n);search_xueli();break; case 3:printf(按电话号码查询n);search_tel();break; case 4:main();break; default:b
13、reak; 9.查询函数中按职工号查询void search_num() int num; int i,t; int m=load(); printf(请输入要查找的职工号:n); scanf(%d,&num); for(i=0;im;i+) if(num=emi.num) printf(n已找到此人,其记录为:n); printf( 职工号t姓名tt性别tt年龄tt部门 n); printf(n %3d%16s%16c%16d%16sn,emi.num,emi.name,emi.sex,emi.age,emi.dep); printf(n 学历tt工资tt住址tt电话 n);printf(n
14、 %3s%14d%16s%16sn,emi.xueli,emi.wage,emi.addr,emi.tel); break; if(i=m) printf(n对不起,查无此人n); printf(n); printf(返回查询函数请按1,继续查询职工号请按2n); scanf(%d,&t); switch(t) case 1:search();break; case 2: break; default:break; 10.查询函数中按学历查询void search_xueli() char xueli30; int i,t; int m=load(); printf(请输入要查找的学历:n);
15、 scanf(%s,xueli); for(i=0;im;i+) if(strcmp(emi.xueli,xueli)=0) printf(n已找到,其记录为:n); printf( 职工号t姓名tt性别tt年龄tt部门 n); printf(n %3d%16s%16c%16d%16sn,emi.num,emi.name,emi.sex,emi.age,emi.dep); printf(n 学历tt工资tt住址tt电话 n); printf(n %3s%14d%16s%16sn,emi.xueli,emi.wage,emi.addr,emi.tel); if(i=m) printf(n对不起,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 职工管理系统c语言课程设计报告 精品资料 职工 管理 系统 语言 课程设计 报告 精品 资料
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内