职工信息管理系统程序设计
员工信息管理系统(含附源代码)03
scanf("%s",work[i].name);
printf("\n\t请输入员工身份证号:");
scanf("%s",work[i].ID);
printf("\n\t请输入员工性别:");
scanf("%s",work[i].sex);
printf("\n\t请输入员工出生日期(yyyy-mm-dd):");
开始选择更新内容i结束开始选择查询内容i结束按性别统计年龄查询函数isum判断两工作号相等isumworkiworki1sumflag1是否继续输入工作号退出删除结束开始输出信息结束开始开始isum输入年龄输出信息结束判断员工的年龄段变量自加开始输入年龄chisum存在员工输出员工信息继续查询退出查询结束身份证排序
scanf("%s",work[i].sex);
printf("\n\t请输入员工出生日期(yyyy-mm-dd):");
scanf("%d-%d-%d",&work[i].birthday.year,&work[i].birthday.month,&work[i].birthday.day);
printf("\n\t请输入员工年龄:");
printf("\t **输入'e'退出列表**\n");
ch=getche();
if(ch=='e')
break;
clrscr();
printf("\t *****员工基本信息列表*****\n");
管理信息系统课程设计(终版)精选全文完整版
可编辑修改精选全文完整版管理信息系统课程设计(终版)1.1 系统名称本文介绍的系统名称为“企业信息管理系统”。
1.2 系统开发背景随着信息技术的发展,企业管理越来越重视信息化建设。
为了提高企业信息管理的效率和准确性,本系统应运而生。
1.3 选题说明本系统旨在帮助企业实现信息化管理,包括信息管理和财务管理两个方面。
1.4 系统目标本系统的目标是提高企业管理的效率和准确性,降低管理成本,提高企业竞争力。
1.5 系统主要功能本系统主要包括信息管理和财务管理两个方面。
信息管理包括员工信息管理、客户信息管理、供应商信息管理等;财务管理包括财务报表管理、成本管理、收支管理等。
1.6 可行性分析1.6.1 可行性研究的前提在进行可行性研究之前,需要对企业的发展状况、市场竞争情况、管理需求等进行全面分析。
1.6.2 系统的可行性研究通过市场调研和用户需求分析,本系统的开发是可行的。
同时,本系统的开发也符合企业的发展战略和管理需求。
2.1 信息管理信息管理是本系统的核心功能之一,包括员工信息管理、客户信息管理、供应商信息管理等。
通过对信息的集中管理,可以提高信息的准确性和及时性,为企业管理提供有力支持。
2.2 财务管理财务管理是企业管理的重要组成部分,也是本系统的主要功能之一。
通过对财务数据的集中管理和分析,可以帮助企业实现成本控制、收支管理等目标。
3.1 系统功能结构为了更好地了解系统的功能结构,本文进行了功能结构调查和组织结构调查。
通过调查分析,得出了系统的功能结构图。
3.2 业务流程分析业务流程分析是系统设计的重要组成部分,通过对业务流程的分析,可以更好地设计系统的功能和流程。
本文对系统的业务流程进行了详细的分析,并绘制了业务流程图。
3.3 数据流程分析数据流程分析是系统设计的另一个重要组成部分,通过对数据流程的分析,可以更好地设计系统的数据结构和流程。
本文对系统的数据流程进行了详细的分析,并绘制了数据流程图。
企业人事管理系统的设计与实现论文DOC 45页
企业人事管理系统的设计与实现论文(DOC 45页)洛阳理工学院毕业设计(论文)题目___企业人事管理系统的设计与实现_姓名______系(部)工程管理系_____专业_经济信息管理___指导教师________2013年5月31日企业人事管理系统的设计与实现摘要企业人事管理系统主要用于对于企业员工档案管理,员工的调动情况的查询及管理,员工工作的评价,员工考勤管理,员工工资管理是便于企业管理者利用计算机高效率完成劳动人事管理的日常事务。
该系统主要利用Visual Basic6.0、Microsoft office Access等工具设计开发完成。
开发过程中采用模块化设计,不同的模块实现了不同的功能。
作为计算机应用的一部分,使用计算机对人事信息进行管理的系统,是一个公司管理及合理分配每个人员,使其发挥其自身最大价值的根本软件。
关键词:人事管理,模块化,Visual basic6.0,Microsoft office AccessThe design and implementation of enterprise personnelmanagement systemABSTRACTEnterprise personnel management system is mainly used in file management for enterprise employees, transfer to the staff query and management, staff evaluation, staff attendance management, employee wages, is advantageous for the enterprise managers use computer efficient complete labor personnel management of daily affairs.The system mainly using Visual Basic and Microsoft office Access tools such as design and development. Development process USES the modular design, different module realizes the different functions. As a part of computer application, using computer to manage the personnel information system, is a management and reasonable distribution of each company personnel, and make it play a maximum value of its fundamental software.KEY WORDS: personnel management, modular, Visual basic6.0, Microsoft office Access目录前言 (1)第1章概述 (2)1.1系统开发背景 (2)1.2 系统的目标和意义 (2)第2章使用工具或开发环境的描述 (4)2.1数据库平台 (4)2.2开发软件 (4)第3章系统分析 (5)3.1 总体的需求分析 (5)3.1.1 需求分析的目标 (5)3.1.2 需求分析的原则 (5)3.2系统的主要功能分析 (5)3.3 数据库需求分析 (6)3.4 数据流程分析 (7)3.5总体功能模块设计 (7)3.6 登录系统结构图 (8)第4章基本设计思想 (10)第5章系统详细设计 (10)5.1 系统E-R图 (11)5.2 数据库设计 (13)5.2.1工资管理数据表 (17)5.2.2考勤管理数据表 (19)5.2.3用户数据表 (22)第6章系统主要界面设计 (23)6.1 系统登录模块设计 (23)6.2 添加用户模块设计 (25)6.3 部门管理模块设计 (25)6.4 考勤记录模块的设计 (26)6.5 员工评价模块设计 (27)6.6 员工档案模块设计 (28)第7章系统测试 (30)结论 (31)谢辞 (32)参考文献 (33)附录 (34)前言人事管理信息系统是典型的信息管理系统,其开发主要包括台后数据库的建立和维护以及前段应用程序的开发俩个方面,对于前者要求建立资料一致性和完整性强,资料安全系好的数据库。
企业员工信息管理系统【范本模板】
本科毕业设计说明书企业员工信息管理系统的设计与实现EMPLOYEE INFORMATION MANAGEMENT SYSTEM DESIGN AND IMPLEMENTATION学院(部):专业班级:学生姓名:指导教师:2012年5月25日企业员工信息管理系统的设计与实现摘要现今互联网发展越来越迅速,给人们的工作和生活带来了极大的便利和高效,信息化,电子化已经成为节约运营成本,提高工作效率的首选.因此在信息化科技飞速发展的今天,借助于电脑,通过员工信息管理系统管理各部门职工,能为企业人力资源的管理者提供人性化的服务。
同时也能为企业的员工提供一定的方便。
本系统具有多方面特点:系统功能完备,用户使用方便简捷,人性化的用户界面,安全保密设置齐全,大大减少了操作人员和用户的工作负担,提高了企业员工信息管理的工作效率和企业的信息化的水平.本论文从员工信息管理系统的初步调查开始,详细介绍员工信息管系统的需求分析和数据流程分析,并进行了系统总体结构设计、数据结构和数据库设计、输入输出设计等。
关键词:J2EE,Mysql,struts2,企业员工信息管理EMPLOYEE INFORMATION MANAGEMENT SYSTEMDESIGN AND IMPLEMENTATIONABSTRACTNowadays, the Internet development is fast, bringing people's work and life tremendous convenience with efficiently.Therefore,the rapid development of technology of information technology today, through the use of computers,employee information management system to manage the various departments and workers,to provide personalized service for corporate human resources managers.Also provides a convenience for the employees of the enterprise。
江苏中小学教职工信息管理系统操作说明
江苏省中小学教职工信息管理系统操作说明◆安装:(见《安装说明书》第一~十三步)一、导入2009年的信息数据:1、将“××学校.sbw”文件拷贝到“C:\Program Files\Susuo\jsgl_xx”文件夹下(若不在C盘安装,则拷贝到你所安装的目录下)。
2、启动服务:(见《安装说明书》第十四~十五步):3、打开主程序后,执行:菜单5“导入导出”→“数据导入”→按钮“导入”→选择目录下的“××学校.sbw”→按钮“接收”注:如去年的信息在电脑中有保存,就直接进入下一步:信息的输入与修改。
二、信息的输入与修改:1、学校信息的修改:执行:菜单2“数据管理”→“学校信息”→点击底下的按钮“修改”→点击上方3个选项卡,分别修改“基本信息”、“班级和学生”和“编制情况”内容。
2、学校部门信息的修改。
与上条类似,略。
3、教职工信息的修改:执行:菜单2“数据管理”→“教职工信息”⑴、办理减少人员的操作:①、选教师→点击按钮“离校”:以下操作,双击选择或直接输入内容:离校方式:11、离休;12退休;21、系统内调出;22系统外调出;41辞职;42、辞退;51、除名;52开除;99其它。
离校时间:去向地区类别:1、城市;2、县区;3、乡镇;4、农村。
去向地区:320400江苏省常州市;320402常州市天宁区;320404常州市钟楼区;320405常州市戚墅堰区;320411常州市新北区;320412常州市武进区……去向单位性质:10机关;21科研设计;22高等学校;23其他教学单位;29其他事业单位;31国有企业;32三资企业;39其它企业;40部队;99其它。
②、单击“确定”→出现对话框:“离校手续办理成功”→确定即可。
⑵、办理2010年新增人员的操作:执行:单击按钮“增加”→出现对话框,在七个选项卡:“基本情况、工作情况、职务职称、工资福利、受教育情况、奖惩考核、社会关系和履历”各项中填写信息。
企业员工信息管理系统设计
企业员工信息管理系统设计毕业设计(论文)企业员工信息管理系统设计教学系:指导教师:专业班级:学生姓名:二零一零年五月注:1. 开题报告应根据教师下发的毕业设计(论文)任务书,在教师的指导下由学生独立撰写,在毕业设计开始后三周内完成;2.设计的目的及意义至少800字,基本内容和技术方案至少400字;3.指导教师意见应从选题的理论或实际价值出发,阐述学生利用的知识、原理、建立的模型正确与否、学生的论证充分否、学生能否完成课题,达到预期的目标。
郑重声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包括任何其他个人或集体已经发表或撰写的成果作品。
本人完全意识到本声明的法律后果由本人承担。
本人签名:日期:目录摘要 (I)ABSTRACT.............................................................................................................................................................. I I 1 绪论 (1)1.1 研究背景 (1)1.2 本课题研究现状 (1)2 企业信息管理系统分析 (3)2.1需求分析 (3)2.2 技术可行性 (4)2.3 环境可行性分析........................................................................................................... 错误!未定义书签。
2.4 系统结构可行性分析................................................................................................... 错误!未定义书签。
C语言课程设计报告:职工信息管理系统程序设计
1.课程论文题目职工信息管理系统程序设计一、题目要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
试设计一职工信息管理系统,使之能提供以下功能:(1)系统以菜单的方式工作。
(2)职工信息录入功能(职工信息用文件保存)。
(3)职工浏览功能。
(4)职工信息查询功能,查询方式可按学历查询或者工号查询。
(5)职工信息的删除、修改功能(可选项)。
2.程序设计思路1、设计思路(1)根据题目要求,应该把职工工资信息用结构体形式输入,在定义一个全局变量和文件指针进行整个程序的运行,然后把职工工资信息送到文件中,所以应该提供一个结构体和文件的输入输出等操作;(2)在程序中需实现职工工资浏览、查询、统计等功能的操作,所以需要建立相应的功能模块来实现;(3)另外还需要提供键盘式选择菜单实现功能,在运行时达到所要的目的。
3.功能模块图5.算法设计1.主函数提供输入、处理和输出部分的函数调用,各功能模块采用菜单方式选择。
2浏览模块【分析】该模块的功能是浏览职工的全部信息3排序模块4查询模块【分析】该模块的功能是根据输入的职工按照工号和学历查找对应的记录,找到以后,可进行继续查找或修改信息的操作。
流程图如下:5修改模块【分析】该模块的功能是显示所有职工的信息,考虑到记录较多,建议采用分屏显示。
显示完所有记录后,输入要修改的职工的工号,根据工号查到职工的记录,并提示用户修改该记录的哪部分信息,根据用户做的选择修改相应信息。
流程图如下:6.程序代码#include<stdio.h>#define N 50struct worker{char id[50];char name[20];char sex[10];char age[10];char edu[20];char salary[10];char address[20];char tel[20];}worker[N];void save(int n) //保存函数,保存n个记录{ FILE *fp;int i;if((fp=fopen("worker.txt","wb"))==NULL) //以只写方式为输出打开一个二进制文件{ printf("\nCannot open file\n");}for(i=0;i<n;i++)if(fwrite(&worker[i],sizeof(struct worker),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() //加载函数{ FILE *fp;int i;if((fp=fopen("worker.txt","rb"))==NULL){printf("\nCannot open file\n");return NULL;}for(i=0;!feof(fp);i++)fread(&worker[i],sizeof(struct worker),1,fp);fclose(fp);return(i-1);}void no_input(int i,int n) //工号输入函数,i表示第i个职工的信息,n 表示比较到第n个职工{ int j,k,w1;do{w1=0;printf("工号:");scanf("%s",worker[i].id);for(j=0;worker[i].id[j]!='\0';j++)if(worker[i].id[j]<'0'||worker[i].id[j]>'9') //判断工号是否为数字{puts("请重新输入!\n");w1=1;break;}if(w1!=1)for(k=0;k<n;k++) //比较到第N个职工if(k!=i&&strcmp(worker[k].id,worker[i].id)==0) //判断职工号是否有雷同{puts("请重新输入!\n");w1=1;break;}}while(w1==1);}void input(int i) //输入一个记录的函数{ no_input(i,i);printf("姓名:");scanf("%s",worker[i].name);printf("性别:");scanf(" %s",&worker[i].sex);printf("年龄:");scanf("%s",&worker[i].age);printf("工资:");scanf("%s",worker[i].salary);printf("学历:");scanf("%s",&worker[i].edu);printf("住址:");scanf("%s",worker[i].address);printf("电话:");scanf("%s",worker[i].tel);}void printf_one(int i) //显示一个记录的函数{printf("%10s %10s %5s %5s %8s %6s %10s %10s\n",worker[i].id,worker[i].name,worker[i].sex,worker[i].age,worker[i].salary,worker[i].edu,worker[i].address,worker[i].tel); }void printf_back() //一个任务结束后选择是好似浏览还是返回{ int k,w;printf("\n\n\tSuccessful^-^.\n\n");printf("接下来做什么?\n\n\t1).浏览全部\t2).返回: [ ]\b\b");scanf("%d",&w);if(w==1)browse();else menu();}modify_data(int i,int n) //修改函数{ int c,w1;do{puts("\nmodify by=>\n\n 1).工号 2).姓名 3).性别 4).年龄 5).工资6).学历 7).地址 8).电话 9).取消");printf("请选择?:[ ]\b\b");scanf("%d",&c);if(c>9||c<1){puts("\nChoice error!please again!");getchar();}}while(c>9||c<1);do{switch(c){case 1:no_input(i,n);break;case 2:printf("name:");scanf("%s",worker[i].name);break;case 3:printf("sex:");scanf("%s",worker[i].sex);break;case 4:printf("age:");scanf("%s",worker[i].age);break;case 5:printf("salary:");scanf("%s",worker[i].salary);break;case 6:printf("edu:");scanf("%s",worker[i].edu);break;case 7:printf("address:");scanf("%s",worker[i].address);break;case 8:printf("tel:");scanf("%s",worker[i].tel);break;case 9:menu();break;}puts("\nNow:\n");printf_face();printf_one(i);printf("\n确定?\n\n\t1).是2).否,重新修改3).不保存退出[ ]\b\b");scanf("%d",&w1);if(w1==1)save(n);}while(w1==2);return(w1);}printf_face() //显示数据结构项目{ printf("\n\t工号姓名性别年龄工资学历地址电话号码\n"); }void enter() //输入模块{ int i,n;printf("输入多少个职工信息(0-%d):",N-1);scanf("%d",&n);printf("\n 请输入职工信息\n\n");for(i=0;i<n;i++)input(i);if(i!=0)save(n);printf_back();}browse() //浏览模块{ int i,j,n;n=load();printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)){printf("\n\n按任意键显示下一页...");getch();puts("\n\n");}printf_one(i);}printf("\t这里有 %d 条记录.\n",n);printf("\n按任意键返回...");getch();menu();}modify() //修改模块{struct worker s;FILE *fp;int i,n,k,w0=1,w1,w2=0;n=load();do{k=-1;printf_face();for(i=0;i<n;i++){if((i!=0)&&(i%10==0)) //目的是分屏显示{printf("\n\n记住要修改的工号.按任意键显示下一页");getch();puts("\n\n");}printf_one(i); //调用显示一个记录的函数}do{printf("\n\n输入要修改的职工工号! 工号:");scanf("%s",s.id); //输入要修改的IDfor(i=0;i<n;i++) //查找要修改的数据if(strcmp(s.id,worker[i].id)==0){k=i; //找到要修改的记录s=worker[i]; //把worker[i]备份,以便恢复}if(k==-1)printf("\n\n未找到请重输");}while(k==-1); //当k=-1表示没有找到printf_face(); //调用显示数据结构项目的函数printf_one(k); //调用显示一个记录的函数w1=modify_data(k,n); //修改记录并返回保存控制值w1,w1=1表示用户已确认修改if(w1==1){printf("\Successful^_^.\n\n修改另一个?\n\n\t1).是 2).否,保存退出\t[ ]\b\b");scanf("%d",&w0);w2=1; //用来控制保存,使w2=1是标记已有过修改}else{w0=0;if(w2==1)worker[k]=s;}if(w0!=1&&w2==1)save(n);}while(w0==1);menu();}search() //查询模块{ int c,w1;do{puts("\nsearch by=>\n\n1).工号 2}.学历 3).取消并返回"); printf("Which you needed?:[ ]\b\b");scanf("%d",&c);if(c>3||c<1){ puts("\nchoice error!please again!");getchar();}}while(c>3||c<1);{switch(c){case 1:search1();break;case 2:search2();break;case 3:menu();break;}}}search1() //按工号查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n输入要查询的工号! id:");scanf("%s",s.id);printf_face();for(i=0;i<n;i++)if(strcmp(s.id,worker[i].id)==0){k=i;printf_one(k);break;}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search1();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}search2() //按学历查询模块{int i,n,k,w1=1,w2,w3,w4;struct worker s;n=load();do{do{k=-1;printf("\n\n请输入你要查询的学历:\n");scanf("%s",);printf_face();for(i=0;i<n;i++)if(strcmp(,worker[i].edu)==0){k=i;printf_one(k);}if(k==-1){printf("\n\nNo exit!please");printf("\n\n继续查找?\n\t1).是 2).否,返回 [ ]\b\b");scanf("%d",&w1);if(w1==2) menu();}}while(k==-1&&w1==1);w4=0;w3=0;if(k!=-1){printf("\n\n接下来干什么?\n\t1).查找另一个 2).修改 3).返回菜单[ ]\b\b");scanf("%d",&w2);switch(w2){case 1:search2();break;case 2:w3=modify_data(k,n);break;case 3:{menu();break;}}}}while(w2==1);menu();}menu(){int n,w1;do{puts("\t\t*******************菜单*******************\n\n");puts("\t\t\t\t1.录入职工信息");puts("\t\t\t\t2.浏览职工信息");puts("\t\t\t\t3.查询职工信息");puts("\t\t\t\t4.修改职工信息");puts("\t\t\t\t5.退出");puts("\t\t****************************************\n\n");printf("请选择(1~5): [ ]\b\b");scanf("%d",&n);if(n<1||n>5) //对选择的数字作判断{w1=1;getchar();}else w1=0;} while(w1==1);switch(n){case 1:enter();break; //录入 case 2:browse();break; //浏览 case 3:search();break; //查询 case 4:modify();break; //修改 case 5:exit(0); //退出}}main(){menu();}7.程序运行结果下面是各个模块的的界面截图(1)、主菜单(2)、输入模块(3)、浏览模块(3)、查找模块(4)、修改模块8.编程中遇到的困难及解决方法温故而知新,可以为师矣。
C语言课设职工信息管理系统
课程设计任务书目录一、题目要求 (1)二、算法设计 (3)三、编程实现 (6)四、结果分析 (13)五、参考文献 (14)一、题目要求题目名称:设计字符串比较的函数和销售员业绩管理程序内容:1. 有两个字符串,各有10个字符,是编程完成如下功能:(1)分别找出两个字符串中最大的字符元素;(2)将两字符串对应位置元素逐个比较,并统计输出两个字符串对应元素大于、小于和等于的次数。
2. 销售员业绩管理程序主要用结构体数组实现,用结构体表示每项记录,包含数据为:编号、姓名、销售产品名、产品单价、销售数量、销售额。
其中销售额通过计算得到,计算公式:销售额=产品单价*销售数量设计各个函数,分别实现以下功能:(1)录入:完成业绩信息的输入,最好是追加方式;(2)删除:完成业绩信息的删除;(3)修改:允许对已经录入的数据重新进行编辑、修改;(4)显示:显示所有业绩信息(多者可分页显示) ,可以根据某种条件显示,如出销售额大小顺序;(5)查询:a) 输入姓名,显示该销售员的销售记录,并计算销售总额;c) 输入产品名,显示该产品的销售记录及总量;(6)统计: 统计所有销售员的销售总额,以图形显示比较结果,如下:Jack |**********Marry |*******************John |**************(7)退出程序。
设计菜单,通过选择菜单调用以上各函数。
要求:利用C语言编写上述程序,开发环境可采用Turbo C 2.0 或Visual C++ 6.0等。
二、算法设计1. 有两个字符串,各有10个字符,是编程完成如下功能:(1)分别找出两个字符串中最大的字符元素;(2)将两字符串对应位置元素逐个比较,并统计输出两个字符串对应元素大于、小于和等于的次数(第一题流程图)2. 销售员业绩管理程序主要用结构体数组实现,用结构体表示每项记录,包含数据为:编号、姓名、销售产品名、产品单价、销售数量、销售额。
软件课程设计-员工信息管理系统
枣庄学院信息科学与工程学院课程设计任务书题目: 企业员工信息管理系统学生1: 贺佳学生2:安新学生3:武艳飞学生4:区丽君专业:计算机科学与技术课程: 软件工程指导教师: 姜振凤职称:讲师完成时间: 2013年5 月--—-2013 年6月枣庄学院信息科学与工程学院制2013年6月30日课程设计任务书及成绩评定目录1 概述 (1)1。
1 设计目的 (1)1.2 设计背景 (1)1.3开发环境 (2)1。
4小组分工 (2)2 可行性分析 (2)2。
1技术可行性分析 (2)2.2社会可行性分析 (2)2。
3经济可行性分析 (2)2。
4操作可行性分析 (3)3需求分析 (3)3。
1需分析的任务求 (3)3.1.1界面要求 (3)3。
1。
2功能要求 (3)3。
2子功能需求 (3)3。
3数据流图DFD (5)3。
3。
1顶层数据流图 (5)3.3.2一层数据流图 (5)3.3.3二层数据流图 (6)3。
4数据字典 (7)3。
4。
1数据源点描述: (7)3。
4.2加工逻辑词条描述 (7)3。
4.3数据流名词条描述: (7)3.4.4数据文件词条描述: (8)4。
软件设计 (8)4。
1概要设计 (8)4.1。
1 系统层次结构图 (8)4.1。
2系统IPO图 (8)4。
2 详细设计 (10)4。
2.1登录模块 (10)4。
2。
2 人事管理模块 (11)4.2。
3 工资管理模块 (12)4.2。
4系统管理模块 (13)4.3数据库设计 (14)5 软件实现 (14)5。
1登陆界面 (14)5。
2添加员工基本信息 (15)5.3修改员工基本信息 (16)5。
4 查询员工基本信息 (17)6 软件测试报告 (17)6。
1.测试方案 (17)6.2. 测试条目 (17)6.3设计测试用例 (18)6。
4。
测试结论 (19)7 总结 (19)参考文献 (20)1 概述自上个世纪90年代以来,计算机技术的迅猛发展和推广普及,为各行各业突飞猛进的发展带来了新生的动力,推动了各个行业向更高的层次进步.当今时代是飞速发展的信息时代。
员工管理系统
程序设计实习实验报告班级:信A0812学号: 25姓名:万明指导老师:周小雄2010-2011第1学期实验员工管理系统班级:信A0812 学号:25 姓名:万明指导教师签名:__________ 成绩:__________ 一、问题描述设计一个计算机程序,能够实现简单的员工管理功能。
设计要求:1.每个员工的信息包括:编号、姓名、性别、出生年月、学历、职务、电话、住址等。
2.系统的功能包括:(1)查询:按特定条件查找员工。
(2)修改:按编号对某个员工的某项信息进行修改。
(3)插入:加入新员工的信息。
(4)删除:按编号删除已离职员工的信息。
(5)排序:按特定条件对所有员工的信息进行排序。
二、算法说明1.算法功能(1)采用结构体WORKER来存储员工的相关信息,定义一个由结构体组成的链表来实现对多个员工信息的存储,以及插入、删除、修改等操作。
(2)注册新员工信息:采用链表的操作,向链表接点的前一个接点插入信息。
(3)查询、修改:采用链表的操作进行信息的查找,找到后可以进行修改覆盖原来的内容。
(4)删除:按链表的操作进行,按关键字找到相应的接点,然后删除此接点的前一个接点即可。
(5)排序:按照员工的工号升序排序,采用冒泡排序法,并且交换所有信息。
2.函数说明Link Create(Link Head);//创建链表void Release(Link Head);//释放链表空间Link Search(Link Head);//按条件查找链表节点Link Searchbywno(Link Head);//按员工号查找员工信息Link Updata(Link Head);//修改员工信息Link Insert(Link Head);//插入员工信息Link Del(Link Head);//删除退休员工的信息Link rankbywno(Link Head);//按员工号将员工排序void Display(Link Head);//查找链表所有节点void Display_Node(Link pNode);//显示链表节点的信息Link Searchwithoutprint(Link Head);//查找链表节点的信息但是不用输出3.数据结构说明struct worker//定义员工结构体链表来存储员工的信息{int wnum;//工号char name[15];//姓名char sex[4];//性别char age[12];//出生年月char post[6];//学历char job[10];//职位unsigned int telnum;//电话号码char add[23];//家庭地址struct worker *next;定义下一个接点};typedef struct worker Node;typedef Node *Link;//定义链表节点三、测试结果第一组测试:(1):测试目的:注册新信息并显示出来。
C语言职工工资管理系统设计报告
《C语言程序设计》课程设计报告设计题目:职工工资管理系统班级:学号:姓名:信息工程学院1 前言工资管理系统是企业不可缺少的一部分,它利用计算机对员工工资进行统一管理,实现工资管理系统的系统化、规范化和自动化,为企业提高工作效率。
本程序旨在训练读者的基本编程能力,了解管理信息系统的开发流程,熟悉C语言的文件和结构数组的各种基本操作。
本程序中涉及结构体、数组、文件等方面的知识。
2 需求分析2.1 课程设计目的学生在教师指导下运用所学课程的知识来研究、解决一些具有一定综合性问题的专业课题。
通过课程设计(论文),提高学生综合运用所学知识来解决实际问题、使用文献资料、及进行科学实验或技术设计的初步能力,为毕业设计(论文)打基础。
2.2 课程设计任务职工工资管理系统功能设计要求(1)输入记录:将每一个职工的姓名、ID号以及基本工资、职务工资、岗位津贴、医疗保险、公积金的数据作为一个记录。
该软件能建立一个新的数据文件或给已建立好的数据文件增加记录。
(2)显示记录:根据用户提供的记录或者根据职工姓名显示一个或几个职工的各项工资和平均工资。
(3)修改记录:可以对数据文件的任意记录的数据进行修改并在修改前后对记录内容进行显示。
(4)查找记录:可以对数据文件的任意记录的数据进行查找并在查找前后对记录内容进行显示。
(5)删除记录:可删除数据文件中的任一记录。
(6)统计: (A)计算各项工资平均工资及总工资, (B)•统计符合指定条件(如职工工资前三项之和在3000元以上、3000~2000元、2000~1000元) 以内的工资职工人数及占总职工人数的百分比。
(C)按字符表格形式打印全部职工工资信息表及平均工资(•包括各项总的平均工资)。
(7)保存数据文件功能。
例如:职工工资信息表ID号姓名基本工资职务工资津贴医疗保险- 公积金- 总工资01 张望 1286 794 198 109 135 203402 李明1185 628 135 94 114 174003 王小民895 438 98 64 73 129404 张效章1350 868 210 116 150 216205 彭山745 398 84 61 68 1098各项平均工资 1092.2 625.2 145 88.8 108图3.1 系统模块图4 具体代码实现#include"stdio.h"#include<stdlib.h>#include<conio.h>#include<string.h> // 头文件static int n=0; // 定义静态全局变量,存储已经读入记录的条数。
员工管理系统
洛阳理工学院课程设计报告课程名称数据结构设计题目员工管理系统课程设计任务书设计题目:员工管理系统_________________________________________________________设计内容与要求:[问题描述]每个员工的信息包括:编号、姓名、性别、出生年月、学历、职务、电话、住址等。
系统能够完成员工信息的查询、更新、插入、删除、排序等功能。
[基本要求](1)排序:按不同关键字,对所有员工的信息进行排序。
(2)查询:按特定条件查找员工。
(3)更新:按编号对某个员工的某项信息进行修改。
(4)插入:加入新员工的信息。
(5)删除:按编号删除已离职的员工的信息。
课程设计评语成绩:指导教师:_______________年月日前言员工管理系统是一个工作单位不可缺少的管理工具,它管理的数据对于公司的决策者和管理者来说都至关重要,所以员工管理系统应该能够为用户提供充足的信息和快捷的查询手段。
但一直以来各个公司基本上都是靠传统的人工方式来管理员工信息,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于信息的查找、更新和维护都带来了不少的困难。
当今社会,信息迅速膨胀,随着各个公司的规模增大,有关信息管理工作所涉及的数据量越来越大,员工信息量也大大增加,利用传统的手工查询、登记、修改等方法的处理速度远远跟不上公司的需求,有的公司不得不靠增加人力、物力来进行信息管理。
随着计算机技术的不断提高,计算机作为知识经济时代的产物,其强大的功能已为人们深刻认识,它已进入人类社会的各个行业和领域并发挥着越来越重要的作用,成为人们工作和生活中不可缺少的一部分。
而作为计算机应用的一部分,使用计算机对员工进行管理,具有手工管理所无法比拟的优点。
例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高员工管理的效率,也是公司的科学化、正规化管理和与世界接轨的重要条件。
C语言-职工档案管理系统
printf("~~~Coyote 2009 年 6 月~~~~ \n"); printf("~~~~~~~~~~~~~~~~~~~~~~~ \n");
printf(" 请您选择操作类型 : \n"); printf("======================== \n"); printf(" 1.输入职工信息 \n");// 用户选择 printf(" 2.显示职工信息 \n"); printf(" 3.查找职工信息 \n");
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");
员工人事信息管理系统
第一章绪论1.1 研究的内容随着计算机和网络技术的广泛应用,人事档案管理已成为现代企业管理中必不可少的一部分.企业要发展必须要对人事方面做出更好的管理和控制,为适应现代企业制度管理的要求,实现企业劳动人事档案管理的科学化和规范化,以更好的促使企业的发展的需要,从而提出了企事业单位人事档案管理系统的开发的课题来对企业进行科学现代化的管理.1。
2 研究的软硬件环境企事业单位人事档案管理工作是一种繁琐,务求准确的信息检索工作.特别是在对在岗人员的调动,离退人员,工资发放,职称评定等信息的管理,具有典型的信息处理管理模式。
以PowerBuilder 为设计工具以更好的对软件进行开发与应用,达到提高企事业业单位人事档案管理信息系统的效果。
第二章系统需求分析2。
1 系统开发战略本系统开发主要采用自顶向下的开发方式,自顶向下的方法模型如下图所示::通过以上分析,企业职工管理系统有基础的信息管理模块,职工管理模块、备忘记录。
数据库模块组成。
2.2。
1 需求分析的任务需求分析的任务是通过详细的调查现实世界要处理的对象(组织、部门、企业等),充分了节原系统(手工系统或计算机系统)工作概况,明确公司的各种需求,然后再此基础之上确定新的功能。
调查的重点是“数据”和“处理”,通过调查收集与分析,获得企业对数据库如下要求: (1)信息要求。
指公司需要从数据库中获得信息的内容和性质.即需要在数据库当中存储哪些数据。
(2)处理要求。
指公司要完成什么样的处理功能,对处理的时间有什么要求,处理方式是批处理还是联机处理。
(3)安全性与完整性要求。
设计人员必须具备专业的知识,不断了解公司的需求需要。
了解公司,深入与公司人员进行交流,才能逐步满足公司的实际需求。
2.2。
2 需求分析的方法进行需求分析首先是调查清楚该公司的实际要求,与公司达成共识,然后分析和表达这些需求。
调查公司的具体步骤如下:(1)调查组织机构情况。
(2)调查个部门的业务状况(3)在熟悉业务的基础之上,协助用户明确对新系统的各种要求,包括信息要求、用户要求、安全性与完整性要求,这是调查的又一重点.(4)确定新系统的边界。
数据结构课程设计-职工信息管理系统-单链表实现程序源代码
printf(”请你输入要查找的工号:");
scanf(”%s",findmess);
p=Locate(l,findmess,”num”);
if(p)
{
printf(”\t\t\t\t查找结果\n”);
printstart(); //打印横线
printc(); //打印各学科标题
printe(p); //打印p结点各个数据成员的值
printf(”\t* [7] 排序 [8] 保存职工信息 *\n");
printf(”\t* [9] 显示数据 [0] 退出系统 *\n”);
printf(”\t* *\n”);
printf("\t*****************************************************************\n”);
}
void Wrong()
{
printf("\n=====>提示:输入错误!\n");
}
void Nofind()
{
printf("\n=====〉提示:没有找到该职工!\n”);
}
void printc() /* 本函数用于输出中文 */
{
printf(" 工号\t 姓名 性别 部门 职称 工资 总工资 平均工资\n");
Node *p,*r; /*实现删除操作的临时的结构体指针变量*/
char findmess[20];
if(!l—〉next) //当list无后继结点时,提示和结束返回del()
{
printf("\n=====>提示:没有记录可以删除!\n");
{员工管理}人员信息管理系统
{员工管理}人员信息管理系统C++课程设计实验报告——人员信息管理系统一:系统要求分析1:功能需求(1)人员信息基本管理,包括人员信息的录入、修改和删除;(2)能够自动设置员工的编号,即每增加一位新员工,编号增一;(3)能够分别对不同级别的员工(如经理、技术人员、推销人员等)按照不同的公式计算其工资收入;(4)能够将人员信息保存到磁盘上,以便程序下次运行时使用;(5)具有一定的排错功能,如当用户输入错误数据时提示用户;(6)能够实现一定程度的查询和统计功能。
(7)其他你能想到并对系统有用的功能。
在实现程序功能的基础上,尽量运用所学知识,改进程序实现方法,提高程序的可读性、模块性、可扩展性、可重用性和健壮性。
工资计算公式:经理:固定为8000技术人员:工作时间*每小时酬金(100RMB)销售经理:1%提成+固定工资(5000RMB)推销员:4%提成二:系统总体设计1:系统功能框架设计三:系统详细设计1:设计思路使用面向对象的程序设计思想进行分析,整个系统涉及两大类信息和操作,公司,人员。
所以系统主要涉及两个大类:公司类business 、人员类person 。
系统的总体框架就是公司类,人员类的定义;主函数中定义一个公司对象,循环显示主菜单并根据用户选择调用公司类的相应方法(成员函数)。
(1)公司类business :考虑系统操作的人员信息的数量具有不确定性,所以考虑使用链表保存、处理人员信息。
公司类包含:所有人员信息的一个不带头结点的链表(作为数据成员)及可以对人员信息进行增,删,改,查询经营信息,基础数据设置,数据存盘,数据装入等操作的相关模块(write,build,search,repair,delete,list)作为成员函数。
(2)人员类person :所有人员都具有的公共信息及操作可以使用人员类进行描述。
由于系统具有4类人员且4类人员数据,操作有所不同,如销售员包含销售额,而兼职技术人员包含工作小时数且计算工资的方法不同,所以应当为4类人员创建相应的person 类的派生类。
C语言课程设计报告 职工信息管理系统
case 0: exit(); } printf("\n\n 操作完毕,请再次选择!"); } else printf("\n\n 选择错误,请再次选择!"); } } 2 数据添加 【程序】
void append() { if((fp=fopen("worker.xls","a"))==NULL) { printf("\n 不能打开该文件!"); exit(); } printf("\n 请输入添加职工信息(姓名、职工号、性别、年龄、学历、职位、 工资、电话、地址)\n"); scanf("%s%s%s%s%s%s%s%s%s",,one.num,one.sex,one.age,one.recor d,one.position,one.wanges,one.tel,one.addr); fprintf(fp,"%-10s%-8s%-5s%-5s%-10s%-8s%-8s%-10s%-15s\n",,one.n um,one.sex,one.age,one.record,one.position,one.wanges,one.tel,one.addr); fclose(fp); }
5 数据删除 【程序】
void delete() { int m,k=0; long a,b; char namekey[8], valid[4]; printf("\n 请输入您要删除的职工姓名:"); scanf("%s",namekey); if((fp=fopen("worker.xls","r+"))==NULL) { printf("\n 不能打开该文件!"); exit(); } while(!feof(fp)) { a=ftell(fp); fscanf(fp,"%s%s%s%s%s%s%s%s%s\n",,one.num,one.sex,one.age,one. record,one.position,one.wanges,one.tel,one.addr); if(strcmp(namekey,)==0) { k=1; break; } } if(k==1) {
C语言程序设计-职工信息管理系统
河南理工大学计算机科学与技术学院课程设计报告20 12 — 20 13 学年第二学期设计名称职工信息管理系统设计上机地点上机日期学生姓名学号专业班级指导教师年月日一.设计目的:通过亲自设计程序,可以令我们熟悉c语言操作,更熟练的掌握c语句。
初步体会编程的过程,为将来的程序深入学习打下基础和培养兴趣。
二.总体设计:三.详细设计:(一). 为了方便使用结构此系统结构均为全局类型定义struct employee //定义一个职工信息的结构体{int num;char name[10];char sex;int age;char xueli[30];int wage;char addr[30];char tel[20];}em[100];(二).各模块的功能和实现1.菜单模块:显示职工管理系统的主菜单,供用户选择所需的功能,通过自己定义的void menu()函数来实现。
2.输入模块:输入职工的工号、姓名以及其它的一些职工的相关信息,通过自己定义的void input()函数来实现。
3.保存模块:将内存中职工的信息输出到磁盘文件中,可以通过自己定义的void save(int)函数来实现。
4.浏览模块:浏览所有职工的相关信息,通过自己定义的void display()函数来实现。
5.删除模块:删除需要删除的职工的所有信息,通过自己定义的void del()函数来实现。
6.添加模块:添加需要添加的职工的相关信息,通过自己定义的void add()函数来实现。
7.按职工号查询模块:可以按职工号来查询职工的相关信息,通过自己定义的void search_num()函数来实现。
8.按职工的的学历查询模块:可以按职工的学历来查询职工的相关信息,通过自己定义的void search_xuelil函数来实现。
9.按职工的电话号码查询模块:可以按职工的电话来查询职工的相关信息,通过自己定义的void search_tel函数来实现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
引言通过大一下学期对C语言的学习,了解到了很多C语言的相关知识。
学习的过程有很多困惑但是当自己能够独立的看懂,能够独立的完成一个简单的程序时,心中就会收获无限的喜悦和成就感。
我可以看懂一些简单的程序,编写一些简单的程序,更多的是学会了一种思想——编程,它让我去思考很多日常生活中的事物是怎样通过一个个小小的函数实现其功能的,激发我探究的兴趣,更让我认真学习C语言的程序设计。
C语言是在国内外广泛使用的一种计算机语言。
C语言简洁紧凑、使用灵活方便、运算符丰富、适用范围大、可移植性好。
它既具有高级语言的特点,又具有汇编语言的特点。
它可以作为系统设计语言,编写工作系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
在这次的课程设计中我将通过亲自设计程序,让自己熟悉C语言操作,更熟练的掌握C语句。
初步体会编程的过程,在不断的调试中获得最为完整的程序,为将来的程序深入学习打下基础和培养兴趣。
1 功能简介和设计要求1.1程序功能简介可以向文件中录入、删除、添加、查询职工信息,也可以从文件中导出来浏览1.2程序设计要求职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。
试设计职工信息管理系统,使之能提供以下功能:系统以菜单方式工作职工信息录入功能(职工信息用文件保存)--输入职工信息浏览功能--输出查询信息功能:(至少一种查询方式) --算法按职工号查询按学历查询按电话查询职工信息删除、添加功能2 程序总体设计框图:用键盘输入职工信息:将信息写入指定文本文件:将信息导出放在结构数组em 中:将所有信息显示在屏幕上 :输入职工号显示信息 :输入名字显示信息 :输入学历显示信息:删除原有的职工信息:添加新的职工信息3 主要函数介绍主函数:main()显示系统工作菜单,罗列该系统所有功能。
先声明所有将会调用到的函数名。
再运用选择函数switch 即可根据使用者所输入的功能代号进入对应的功能程序。
亮点:定义一个全局变量*p 和全局变量a。
其中a表示当前系统中职工人数,p指向a的地址,追踪人数变化,这样在添加或者删除导致人数变化后,浏览函数display()能够正确显示出当前人数的职工信息。
宏定义define N指定首次输入的职工人数,可根据不同需要随时更改。
输入函数:void input()定义一个结构struct employee和数组em【N】用来储存N个职工的所有信息(职工号em【i】number、姓名em【i】name、性别em【i】sex、年龄em【i】age、学历em【i】xueli、工资em【i】wage、住址em【i】address、电话em【i】telephone)。
通过for循环输入所有职工信息。
用printf语句提示需要输入的内容,接着用scanf语句输入相应内容。
输入完毕后套用保存函数save(N)将所输入的信息写入指定文件。
保存函数:void save(int m)定义文件指针fp,用fopen"只写"打开指定在D盘的“d://bbb.txt”文本文件。
首先用if语句判断文件是否打开成功,若fopen返回值不为0,则可继续下面操作。
用for循环通过fprintf语句将结构数组em中的内容写入保存在D盘的文本文件里面。
形参m指需要写入文件的职工人数。
最后关闭文件。
!=0导出函数:void load(int b)首先判断fopen"只读"打开“d://bbb.txt”是否成功,若其返回值不为零,继续下面操作。
用for循环通过fscanf语句将文件中的职工信息取出放到em结构数组里面。
形参b指需要导出的职工人数。
最后关闭文件。
图同上。
4 功能模块函数设计和调试4.1功能模块函数设计在整个程序的编译过程中,在调试的时候出现了好多的错误和警告,经过认真的分析和修改都可以解决,但是其中遇到最大的问题是所有程序代码编完放在一起后,虽然能够成功运行,但是还是出现了一些小问题,就是在调用随机分配函数时职工的工号不随机分配,每次到了自动分配工号的时候都会跳过那一步就直接进行下一环节输入了。
这使我百思不得其解,后来我在网上查询了好多资料后终于明白了,原来在使用随机分配函数时首先要调用随机分配函数所在的函数库,这样才能够正常使用。
使用时如果职工人数发生变化,会导致文件后部出现乱码的现象。
若要使每次运行都正常,必须在人数改变后退出程序,修改宏定义N 的值。
这样很不方便,不能够连续运行。
为解决这一大问题,最后我想到了定义一个全局变量,用来追踪链接最新的人数。
特别是删除和添加这两个会导致人数变化的函数中,全局变量p起了很大作用。
经过一边修改一边调试,最终可以成功的用p串联整个函数,在连续运行时,总能根据最新的人数调用各个函数。
另外在串联所有函数时,调试提示出错:有以下几个函数:“search;srand;display;basic;types”解决:在函数名前加void指明类型。
整个程序代码是分块书写的,每个函数都可以独立运行。
只有输入函数查询菜单函数写得很顺利,一次性就能够成功运行,其他函数在调试过程中或多或少都出现了问题。
保存函数save()在调试和链接的时候都没有出现错误提示,但在运行的时候出现了问题。
写入指定位置的文件,打开后总会有乱码。
与c语言课本上的例题对照后发现,在存储文件时一定要指定文件的存储类型。
这样才能够正确的进行存储,不会出现乱码的现象。
导出函数load()遇到两个问题。
1是为方便直接将保存函数复制过来进行修改时,忘了修改文件的打开方式,不能运行。
经过多次检查后终于发现了,解决:将只写改为只读就ok了。
2是用fscanf语句时,漏写地址符。
调试和链接都没问题,但点击运行后,总出现一个提示出错的蓝色小窗口。
经过老师的提示发现了错误的所在。
解决方法:在em[i].name 等之前加上取地址符就可以解决。
在进行职工信息录入的时候一定要注意中文和英文之间的切换,不然的话会出现无法正确的输入和跳转现象。
4.2 程序调试4.2.1 原始数据{ int num;char name[10];char sex;int age;char xueli[30];int wage;char addr[30];long int tel;}em[100]; /*定义一个结构体*/void menu();void input();void save(int);void display();void del();void add();void search();void search_num();void search_xueli();void search_tel();void modify(); /*定义各函数*/void menu() /*菜单函数*/{ printf(" ☆☆☆C语言程序设计☆☆☆\n");printf("\n");printf(" ∮机设1401班张凯凯∮\n");printf("\n");printf(" **********职工信息管理**********\n");printf(" 1.录入职工信息");printf(" 2.浏览职工信息\n");printf(" 3.查询职工信息");printf(" 4.删除职工信息\n");printf(" 5.添加职工信息");printf(" 6.修改职工信息\n");printf(" 7.退出\n");printf(" **********谢谢使用**********\n");printf("\n");printf("\n");}void main(){ menu(); /*调用菜单函数*/int n,flag;char a;do{ printf("请选择你需要操作的步骤(1--7):\n");scanf("%d",&n);if(n>=1&&n<=7){ flag=1;break; }else{ flag=0;printf("您输入有误,请重新选择!");}} while(flag==0);while(flag==1){ switch(n){ case 1:printf(" ◆◆◆输入职工信息◆◆◆\n");printf("\n");input();break;case 2:printf(" ◆◆◆浏览职工信息◆◆◆\n");printf("\n");display();break;case 3:printf(" ◆◆◆按职工号查询职工信息◆◆◆\n");printf("\n");search();break;case 4:printf(" ◆◆◆删除职工信息◆◆◆\n");printf("\n");del();break;case 5:printf(" ◆◆◆添加职工信息◆◆◆\n");printf("\n");add();break;case 6:printf(" ◆◆◆修改职工信息◆◆◆\n");printf("\n");modify();break;case 7:exit(0);break;default :break;}getchar();printf("\n");printf("是否继续进行(y or n):\n");scanf("%c",&a);if(a=='y'){flag=1;system("cls"); /*清屏*/menu(); /*调用菜单函数*/printf("请再次选择你需要操作的步骤(1--6):\n");scanf("%d",&n);printf("\n");} elseexit(0);}}void input() /*录入函数*/{int i,m;printf("请输入需要创建信息的职工人数(1--100):\n");scanf("%d",&m);for (i=0;i<m;i++){printf("职工号:");srand((int)time(0));em[i].num=rand()%10000+20140000;if(em[i].num!=em[i-1].num)printf("%8d ",em[i].num);printf("\n");printf("请输入姓名: ");scanf("%s",em[i].name);getchar();printf("请输入性别(f--女m--男): ");scanf("%c",&em[i].sex);printf("请输入年龄: ");scanf("%d",&em[i].age);printf("请输入学历: ");scanf("%s",em[i].xueli);printf("请输入工资: ");scanf("%d",&em[i].wage);printf("请输入住址: ");scanf("%s",em[i].addr);printf("请输入电话: ");scanf("%ld",&em[i].tel);printf("\n");}printf("\n创建完毕!\n");save(m);}void save(int m) /*保存文件函数*/{int i;FILE*fp;if ((fp=fopen("employee_list","wb"))==NULL) /*创建文件并判断是否能打开*/ {printf ("cannot open file\n");exit(0);}for (i=0;i<m;i++) /*将内存中职工的信息输出到磁盘文件中去*/if (fwrite(&em[i],sizeof(struct employee),1,fp)!=1)printf("file write error\n");fclose(fp);}int load() /*导入函数*/{FILE*fp;int i=0;if((fp=fopen("employee_list","rb"))==NULL){printf ("cannot open file\n");exit(0);}else{do{fread(&em[i],sizeof(struct employee),1,fp);i++;}while(feof(fp)==0);}fclose(fp);return(i-1);}4.2.2 调试过程5 设计心得与总结:经过一学期的C语言学习,我们掌握了C语言的基础知识,能够读懂别人用c语言设计编译的程序。