一个项目设计:职工信息管理系统
企业员工信息管理系统【范本模板】

本科毕业设计说明书企业员工信息管理系统的设计与实现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。
员工信息管理系统

员工信息管理系统一、前言随着科技的不断发展,企业的人事管理方式也在不断进步和更新。
人员信息管理系统(以下简称员工信息管理系统)是一个能够帮助企业进行人事管理的软件系统,它可以对企业员工的基本信息、工作经历、薪资福利等进行科学管理和有效记录,从而提高企业的管理效率和工作质量。
本文旨在介绍员工信息管理系统的实现过程和运用价值,旨在提高企业人事管理的效率和精度。
二、员工信息管理系统的设计思路1.需求分析针对企业人事管理存在的问题,我们想要设计一个能够便捷高效管理员工信息的系统,使员工简历等绝密信息得到全面保护,同时提高企业人事管理的效率。
为此,我们对需求进行了以下五个方向的分析:1)便捷的员工信息查看:员工信息管理系统应该具有员工信息查看功能,管理员可快速查看员工信息,对信息进行修改。
2)权限分类:员工信息管理系统应该根据管理者的权限不同而区分相应的操作权限,管理者可以选择开放或关闭员工信息某些内容的展示和修改。
3)完善的系统安全:为了保护企业员工及其机密信息的安全,员工信息管理系统必须具有安全性,需要带有完善的登录验证、权限分配、数据备份等功能。
4)多样化的数据统计工具:员工信息管理系统应该具备多种统计工具,能够方便地进行数据分析和报表生成。
5)用户友好的界面设计:员工信息管理系统的界面设计应该简单明了、美观易用。
能够满足用户在使用系统时的使用习惯和心理需求。
基于以上需求,我们最终确定了员工信息管理的系统功能体系,并进行了构建。
2.设计思路根据上述需求,我们的系统采用B/S架构,网站端为管理员工操作提供各种功能。
通过此架构能够方便用户远程访问,无需下载安装。
此外,我们将系统进行了数据库分离设计,系统安全性得到了有效保证。
管理员可进行新员工信息录入、员工信息查询、修改、离职操作、导出表格、员工数据分析统计以及权限管理等操作。
三、系统功能说明1.用户登录在员工信息管理系统中,用户登录是首要步骤。
管理员需要输入正确的账号和密码才能够进入系统,并进行信息管理操作。
企业员工信息管理系统设计

企业员工信息管理系统设计毕业设计(论文)企业员工信息管理系统设计教学系:指导教师:专业班级:学生姓名:二零一零年五月注: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 系统结构可行性分析................................................................................................... 错误!未定义书签。
企业员工信息管理系统设计与实现

企业员工信息管理系统设计与实现摘要本论文首先对现阶段企业员工信息管理的基本情况进行了分析,提出开发本系统要解决的问题,以及从长远考虑所要达到的目的,对系统进行了详细的需求分析,其次根据系统的实现功能和使用环境对系统做了总体规划,最后完成了模块的划分和数据库的设计与实现,并对系统进行了测试。
本系统开发主要包括前台应用程序的开发和后台数据库的建立与维护两方面。
系统前台主要实现用户薪资、考勤、文章信息的查看,以及发表意见建议等功能。
系统前台选用了Css javascript、html等作为主要的编程语言。
后台主要实现了员工的查询、员工变动信息更新、考勤管理、薪资管理、事项管理、站内文章信息管理以及意见建议管理等功能。
系统选用SQL 数据库。
利用.NET动态网页编程技术实现前后台的数据交互。
在企业的经营生产中,员工信息已成为企业经营管理中不可缺少的一部分,为管理者进行管理和进行各种人士调配活动提供了重要的依据,在生产分配安排中将发挥越来越重要的作用。
关键词:员工信息管理系统、前台、后台、交互。
Enterprise Personnel Management System design andimplementationAt frirst,this paper analyse the situation of enterprise personnel management at the present stage.Point out the question needing to solve for development the system and the long.term purpose. So that the system carried out a detailed needs analysis, then it completed the module design and the design and realization of database and test according to the functions and main implementation for the system.The system mainly includes developing the application inrerface of front-end and building up data-base of back-end. The main functions of the before part include salary,attendance,checking theinformation of article, as well as publishing suggestions, etc. The system use Css javascript, html, etc., as the main programming language.The main functions of background part include the staff inquiry, the staff changes in the information update, attendance management, payroll management, issues management, the article in the station management, as well as suggestions management. The system use SQL database as background database. Using .NET pagesDynamic web page programming to achieve the data Interactive.In the progress of enterprises operating and production, the information of staffs has become a business management of most important part. It will provides an more and more important function for the management of decision-making and personnel.Keywords:Personnel Management System、beforeground、background、interactive第一章.绪论1.1.企业员工信息管理系统的开发背景目前,一些企业对员工信息的管理还存在诸多问题,单靠人力进行员工信息的管理是不够的。
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.编程中遇到的困难及解决方法温故而知新,可以为师矣。
软件课程设计-员工信息管理系统

枣庄学院信息科学与工程学院课程设计任务书题目: 企业员工信息管理系统学生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年代以来,计算机技术的迅猛发展和推广普及,为各行各业突飞猛进的发展带来了新生的动力,推动了各个行业向更高的层次进步.当今时代是飞速发展的信息时代。
典型信息系统项目案例

典型信息系统项目案例以下是一个典型的信息系统项目案例:项目名称:智慧校园信息系统项目背景:随着信息技术的快速发展,智慧校园建设已经成为高校信息化建设的重要方向。
智慧校园信息系统旨在整合校园内各类资源,提高学校管理效率,提升教学质量,为师生提供更好的服务。
项目内容:智慧校园信息系统包括以下几个模块:1. 教务管理系统:实现课程安排、考试管理、成绩录入与查询等功能。
2. 人力资源管理系统:管理教职工信息、考勤、工资发放等人事相关事务。
3. 财务管理系统:管理学校财务收支、财务报表等财务相关事务。
4. 办公自动化系统:实现学校内部公文流转、文件管理、会议管理等办公事务的自动化处理。
5. 校园一卡通系统:实现校园内消费、门禁、图书馆借阅等功能的统一管理。
6. 信息资源共享平台:整合学校各类信息资源,提供在线学习、资料查询等服务。
7. 智能安防系统:实现校园内监控、报警等安全防范功能。
项目实施:项目实施分为以下几个阶段:1. 需求调研与分析:对学校各部门的需求进行调研与分析,确定系统功能模块与技术要求。
2. 系统设计:根据需求调研结果,进行系统架构设计与数据库设计。
3. 系统开发与测试:按照设计要求进行系统开发,并进行功能测试与性能测试。
4. 系统部署与集成:将各模块集成在一起,进行系统部署与调试。
5. 培训与推广:对学校教职工进行系统培训,推广智慧校园信息系统的使用。
6. 后期维护与升级:定期对系统进行维护与升级,保证系统的稳定运行。
项目成果:智慧校园信息系统成功地整合了校园内各类资源,提高了学校管理效率与教学质量,为师生提供了更加便捷的服务。
具体成果如下:1. 教务管理系统实现了课程安排、考试管理、成绩录入与查询等功能的自动化处理,提高了教务管理效率。
2. 人力资源管理系统实现了教职工信息、考勤、工资发放等人事相关事务的信息化管理,提高了人事管理水平。
3. 财务管理系统实现了学校财务收支、财务报表等财务相关事务的信息化管理,提高了财务管理水平。
信息管理系统设计

信息管理系统设计信息管理系统是指为了有效地组织和处理大量的信息而设计的一套系统。
随着信息技术的快速发展,信息管理系统在各个领域中得到了广泛应用,如企业管理、学校管理、医院管理等。
本文将从需求分析、系统设计、功能模块和技术选型等方面来论述信息管理系统的设计。
一、需求分析在设计信息管理系统之前,我们首先要进行需求分析。
需求分析是指通过对用户需求的调研和分析,明确系统所需要具备的功能和特性。
在进行需求分析时,应该充分考虑用户的实际需求,避免设计出无用的功能,从而提高系统的可用性和用户满意度。
二、系统设计在需求分析的基础上,开始进行系统设计。
系统设计是指将需求分析结果转化为系统的结构和功能的过程。
设计一个良好的信息管理系统需要考虑以下几个方面的因素:系统架构、数据库设计、界面设计、安全性等。
1. 系统架构系统架构是指系统的整体结构和组织方式。
常见的系统架构包括单层架构、两层架构、三层架构等。
在选择系统架构时,需要综合考虑系统的规模、性能要求、易用性和可扩展性等因素。
2. 数据库设计数据库设计是系统设计中非常重要的一环。
数据库设计应考虑到系统的数据存储、查询、更新和删除等操作的效率和安全性。
合理设计数据库的表结构和关系,能够提高系统的数据处理效率和数据的完整性。
3. 界面设计界面设计是用户与系统进行交互的重要环节。
良好的界面设计应该符合用户的使用习惯,简洁明了、易于操作。
同时需要注意设计合适的图标、按钮和颜色搭配,以提高用户的使用体验。
4. 安全性信息管理系统通常涉及到大量的敏感信息,如个人隐私、财务数据等。
为了保护这些信息的安全,必须在系统设计过程中考虑安全性的问题。
可以采取加密技术、访问控制、备份策略等手段来提高系统的安全性。
三、功能模块一个完整的信息管理系统通常由多个功能模块组成。
每个功能模块负责系统的某一特定功能。
在设计功能模块时,需要充分调研用户需求,并根据需求设计相应的模块。
常见的功能模块包括用户管理模块、数据管理模块、报表管理模块等。
个人信息管理系统_数据库设计

个人信息管理系统一、教学管理1. 基本需求个人信息管理系统。
用户表包括用户登录名,用户登录密码,用户真实姓名,用户性别,出生日期,用户民族,用户学历,用户职称,用户电话,用户地址,用户邮箱。
联系人要存储用户登录名,好友名称,好友电话,好友邮箱,好友工作单位,好友住址,好友QQ号。
日程安排管理表存储用户登录名,日程时间,日程内容。
个人文件管理表存储用户登录名,文件标题,文件名字,文件类型,文件大小,用户操作。
二、个人信息系统结构建立个人信息管理系统的数据库。
1. 系统模块结构1)组织结构对系统组织结构的分析有助于分析业务范围与业务流程。
系统组织结构如图一所示。
图一:系统组织结构简图其中,个人信息是保存个人信息的地方;个人信息管理,通讯录管理,日程安排管理和个人文件管理等业务。
2)业务分析对于信息处理系统来说,划分系统边界很重要,即哪些功能由计算机来完成,哪些工作在计算机外完成。
这些要通过业务分析确定。
同时,业务流程中涉及的相关数据也通过业务分析得到归类和明确。
在业务分析的基础上,确定数据流图和数据字典。
3)数据库关系分析个人信息管理系统。
该系统存在4个实体集:一:“用户”实体集,主键:用户登录名,无外键,属性有用户登录密码、用户真实姓名、用户性别、出生日期、用户民族、用户学历、用户职称、用户电话、用户地址、用户地址。
二:“联系人列表”实体集,主键:用户登录名,外键:用户登录名,属性:好友名称、好友电话、好友邮箱、好友工作单位、好友住址、好友QQ号。
三:“日程”实体集,主键:用户登录名,外键:用户登录名,属性:日程时间,日程内容。
四:“个人文件”实体集:主键:用户登录名,外键:用户登录名,属性:文件标题、文件名字、文件类型、文件大小、用户操作。
用户与联系人列表存在“包含”联系,每个联系人列表包含多个用户,每个用户只能在一个联系人列表中:用户与日程管理存在“安排”关系,每个用户可以安排多个日程,每个日程管理只能安排给一个用户:用户与个人文件存在“管理”关系,每个用户可以管理多个文件,每个文件只能被一个用户管理。
教职工管理系统课程设计

教职工管理系统课程设计一、课程目标知识目标:1. 学生能理解教职工管理系统的基本概念,掌握其功能模块和工作原理。
2. 学生能掌握数据库管理的基本操作,如增加、删除、修改和查询教职工信息。
3. 学生能了解系统开发的基本流程,掌握与教职工管理系统相关的编程语言和开发工具。
技能目标:1. 学生能运用所学知识,设计并实现一个简单的教职工管理系统。
2. 学生能运用数据库管理技能,对教职工信息进行有效管理。
3. 学生能通过团队协作,解决系统开发过程中遇到的问题,提高沟通与协作能力。
情感态度价值观目标:1. 学生能培养对信息技术的兴趣和爱好,增强学习动力。
2. 学生能认识到信息技术在管理领域的应用价值,提高社会责任感。
3. 学生能在团队协作中学会尊重他人、倾听意见,培养良好的团队合作精神。
课程性质分析:本课程为信息技术课程,旨在让学生掌握教职工管理系统的设计与实现方法,培养其信息技术应用能力和团队协作能力。
学生特点分析:学生处于高年级阶段,具有一定的信息技术基础和编程能力,具备自主学习与合作探究的能力。
教学要求:1. 结合教材内容,注重实践操作,提高学生的动手能力。
2. 强化团队合作,培养学生的沟通与协作能力。
3. 关注学生个体差异,因材施教,确保每个学生都能达到课程目标。
二、教学内容1. 教职工管理系统概述- 了解系统的基本概念、功能模块和工作原理- 分析系统在实际应用中的优势与局限2. 数据库管理基础- 学习数据库的基本概念、数据模型和数据表设计- 掌握SQL语言进行数据增加、删除、修改和查询操作3. 系统开发流程与工具- 了解系统开发的基本流程,包括需求分析、设计、编码、测试等- 学习相关编程语言(如Java、Python等)和开发工具(如Eclipse、Visual Studio等)4. 教职工管理系统设计与实现- 分析系统需求,设计系统功能模块和数据库结构- 编写代码实现系统功能,如用户登录、信息录入、查询、修改等5. 系统测试与优化- 学习系统测试的方法和技巧,确保系统功能的正确性和稳定性- 分析系统性能,提出优化措施,提高系统运行效率6. 团队协作与沟通- 培养团队协作能力,明确分工与责任- 学习有效沟通的技巧,提高项目推进效率教学内容安排与进度:第1-2周:教职工管理系统概述、数据库管理基础第3-4周:系统开发流程与工具、教职工管理系统设计与实现第5-6周:系统测试与优化、团队协作与沟通教材章节关联:本教学内容与教材中关于数据库应用、系统设计与实现、团队协作等相关章节紧密关联,确保学生能够系统地掌握教职工管理系统的开发与应用。
人力资源管理信息系统

人力资源管理信息系统全世界范围内的公司内部组织正在发生巨变,将来公司成功的重点的依赖公司人力资源,人材之争已经成为市场竞争中的中心内容之一,以人为本成为公司立足和发展的根本。
有效劳管理公司的人力资源,为公司供给强有力的贮备力量,使之成为公司发展的主动力。
经过人力资源的有效管理,掌握最新的、正确的公司人力资源信息,并对其进行复杂的统计与剖析,进而充足发挥每个职工的潜能,为公司创建更大的价值。
网络化的今日,网络人力资源管理系统,使新的人力资源协作管理模式成为可能。
经过网络管理系统,特意的人力资源管理人员能够提升自己的工作效率,作好人力资源管理的协调工作,提升人力资源利用率;经过网络管理系统,职工能够直接收理自己的技术,有效地发现和发掘自己的潜能,实时与自己的上司、部下、同事进行的交流与交流,齐心协作,踊跃为公司的发展与决议贡献力量。
经过网络人力资源管理系统对公司人力资源进行管理,使公司人力资源管理适应时代的发展要求,大大提升了公司的中心竟争力。
第一章人力资源管理定义人力资源管理,就是指运用现代化的科学方法,对与必定物力相联合的人力进行合理的培训、组织和分配,令人力、物力常常保持最正确比率,同时对人的思想、心理和行为进行适合的引诱、控制和协调,充足发挥人的主观能动性,使量才录用,事得其人,人事适宜,以实现组织目标。
依据定义,能够从两个方面来理解人力资源管理,即:1.对人力资源外在因素--量的管理。
对人力资源进行量的管理,就是依据人力和物力及其变化,对人力进行适合的培训、组织和协调,使两者常常保持最正确比率和有机的联合,令人和物都充足发挥出最正确效应。
2.对人力资源内在因素--质的管理。
主假如指采纳现代化的科学方法,对人的思想、心理和行为进行有效的管理(包含对个体和集体的思想、心理和行为的协调、控制和管理),充足发挥人的主观能动性,以达到组织目标。
第二章人力资源管理信息系统的剖析一、系统设计的目标HRMIS成立的目标是为了从根本上帮助公司将先进的管理方法和理念贯彻到平时的公司经营中去,实现全面人力资源管理!人力资源管理流程重组等,这类系统就一定联合先进的IT技术!数据库技术Internet技术等技术手段。
员工信息管理系统

员工信息管理系统简介员工信息管理系统是一种用于组织和存储公司员工信息的系统。
通过该系统,公司可以轻松地管理员工相关信息,包括基本信息、工作经历、薪酬数据等。
本文将介绍员工信息管理系统的设计、功能以及优势。
设计员工信息管理系统的设计包括数据库设计、界面设计以及功能模块设计。
数据库设计是系统的核心,需要合理地设计员工信息表、部门表、项目表等,以便快速查询和管理数据。
界面设计应简洁明了,方便用户操作。
功能模块设计需要考虑系统的全面性,包括员工信息录入、查询、修改、删除等功能。
功能员工信息管理系统的主要功能包括: 1. 员工信息录入:管理员可以通过系统录入员工的基本信息,如姓名、工号、部门等。
2. 员工信息查询:可以根据不同条件查询员工的信息,如姓名、部门、工号等。
3. 员工信息修改:管理员可以修改员工的信息,保证数据的准确性。
4. 员工信息删除:允许管理员删除不必要的员工信息,保持数据的清洁。
5. 权限管理:不同级别的用户拥有不同的权限,保证信息安全和管理的合理性。
优势员工信息管理系统的优势主要体现在以下几个方面: 1. 高效性:通过系统化管理员工信息,可以提高信息的查找和管理效率。
2. 准确性:系统可以减少人为错误,保障员工信息的准确性。
3. 安全性:权限管理功能可以确保员工信息不被未授权人员查看或修改。
4. 便捷性:员工信息管理系统可以随时随地查看员工信息,方便管理人员及时做出决策。
结语员工信息管理系统是一种重要的企业管理工具,可以有效地管理和维护员工信息,提高公司的管理效率和信息的安全性。
希望本文对员工信息管理系统有所启发,帮助读者更好地了解和使用这一工具。
人员信息管理系统

人员信息管理系统人员信息管理系统是一种管理和维护个人信息的软件应用程序。
它可以提供强大的数据管理和查询功能,以便组织和企业可以有效地管理他们的员工、客户和合作伙伴的个人信息。
本文将介绍人员信息管理系统的设计原则、系统架构和主要功能,以及该系统如何实现数据保护和隐私保护。
设计原则在设计人员信息管理系统时,需要遵循一些设计原则。
其中最重要的原则是用户友好性。
系统应该简单易用,具有直观的用户界面,使用户可以快速准确地找到所需的信息,同时也应该减少人工干预,提高自动化水平,使信息管理更加高效。
另外,为了确保信息系统的可靠性,该系统应该遵循严格的安全标准,包括数据保护、隐私保护、系统可靠性等方面。
系统架构人员信息管理系统通常由三层构成:客户端、服务器和数据库。
在客户端,用户可以通过交互式界面来使用系统的所有功能。
服务器层提供了中心化的控制和处理功能,将客户端的请求转发到数据库进行查询、修改、添加、删除等操作。
数据库层是系统的核心部分,负责存储所有的用户信息。
主要功能人员信息管理系统的主要功能包括以下几个方面:人员信息的管理、查询、统计、导出、备份和恢复等。
1. 人员信息的管理: 包括人员基本信息、工作经历、联系方式、身份证信息、家庭联系人等信息。
管理员可以通过系统的用户界面管理人员信息,包括添加、修改、删除和查询等操作。
2. 人员信息的查询: 通过系统的查询功能,管理员可以方便快速地搜索所需要的人员信息。
方式可以是根据人员的姓名、性别、出生日期、所属部门、职位、工作地点等条件进行查询。
也可通过关键字在多个维度查询,以满足不同的需求。
3. 统计分析: 人员信息管理系统可以统计数量、性别、年龄、职位等人员信息,以帮助管理员更好地了解组织中人员的结构、情况和发展趋势。
4. 数据导出: 为了方便数据的共享和汇总,人员信息管理系统提供多种方式的数据导出,比如Excel、CSV和PDF等格式。
5. 数据备份与恢复: 为了防止数据库意外中断或数据遭到破坏而导致数据丢失,人员信息管理系统需要进行数据备份和恢复,实现数据的可靠性和完整性。
企业人力资源管理信息系统的设计开发

的现 状 , 最终提 出企业人 力资源 管理 信 息 系统的设 计开 发。 关键 词 : 企业人 力资源 ; 管理 信 息 系统 ; 设 计开 发; 随着科学技术的不断提高, 计算机科学强大的功能已为人们深刻 建立优化业务流程的人力资源系统、实现人力资源管理的整体协同业 认识 , 在人类社会的各个领域发挥着越来越重要的作用。作为计算机 务。 应用的—部分, 使用计算机互联网对 ^ 事信鼠进行管理, 具有手工管理 ( 二冻 统功台 战0 分。为使企业能全面实现现代人力资源管理 所无法比以的优点 。因此, 开 争1 虢 件显得至关重要。 的功能 , 并为管理决策提供强大的数据支持, 本文根据科学的人力资源 管理理念我们将系统的功能模块划分为两大业务平台: 管理和查询平 企业人力资源管理的必要性 台。具体来讲 , 即企业高层和普通职工各 自 拥有不同权限的查询平台, 人力资源管理信 息系统是整个企业信 息化的关键系统之一, 其建 而人力资源工作人员另外拥有管理平台。此外, 为防止意外 睛况发生 立的必要陛主要f 4 在: 导致数据的遗失或错误 , 该系统设计了数据库的备份和恢复等管理功 ( —) 是人 事管理整体化的需要。目前, 企业机构大规模改革使得人 能 。 事管理职能集中, 管理 E 应尽量减少程序, 加强对 日常管理工作的归拢 1 . 人力资源信息查询输出平台。企业高管和普通员工均可 ‘ 查询 合并, 实现这一 目标需要应用现代化的管理手段。虽然 目前一些企业 综合人事管理中的职工基本信息资料, 调配信息、聘任、合同以及考 的人事部门已经建立了具有一定应用程序的管理系统和数据库, 但信 勤等资料信息 ; 每月的薪酬信息 ; 每年度的绩效考核结果以及相关信息 息涵盖范围各不相同。因此, 有必要建立人力资源管理网络系统 , 保证 等 等。 人力资源数据的—致性、完整l 生 和实效陛, 实现信 资源共享 , 从而实 企业的高级领导可以查看所有人的信 息, 普通员工只能看到自己 现人事管理 的整体化 。 的信 息和公司 ^ 、 事基本信 息。 ( 二) 是提高人事管理工作服务质量的需要。人事管理工作中, 要完 2 . 人力资源业务管理平台。机构管理: 根据批文内容, 管理现有机 成相当数量的职工 情况以及人事政策法规的查询工作, —般是职工直 构、录入名称、建制、级别井晾醒变动等。 接到力公 室查询或者通过电话查询 , 这样耗费了大量的时间, 不利于工 综合人事管理 : 主要是在职员工的基本信 息资料的管理 , 人事调配 作效率的提高以及人事研究工作的深入开展。人力资源管理售息系统 管理, 合同管理, 考勤管理等模块信息的维护。 将包括人事工作 中涉及职工的历史状况和现状, 有利于提高人事管理 绩效考核管理: 在确立考核方案和指标体系并构建到系统之后 , 通 工作服务的质量。并对 人 事政策法规的宣传有积极的作用。 过管理年度考核等级的结果以及相关数据 , 系统 自动算出员工的绩效 ( 三堤 实现领导利用人事 决策的需要。该系统的建立, 奖金 。 将实现人员情况、政策情况的实时更新, 信 息资源共享, 企业的领导和 岗位聘任管理: 在设岗通过并聘任之后, 将所有信息录 ^ . 系统进行 人事部门可以随时查阅并掌握人员情况、动态, 利于帮助领导决策提 管理 。 供全面的参考信息, 实现企业人才资源有效的开发管理。 当代社会是信 息 化, 自动化的时代, 基于互联网的, 互联网使人力资源管理信息系统突破了传统的封闭状 二 、企业人 力资源管理现状 态, 信息流突破部门的限制 , 使人力资源管理系统成为一个开放的, 互 目 前, 部分企业的人力资源信 息 化管理平台尚未建立, 企业 人力资 动的技术平台。现代人力资源管理系统强调员工和管理 ^ 员的 自助服 源部门还无法从重复的事务陛工作中解脱出来, 一些企业虽然具有先 务, 其是—种实时, 高效的数据访问方式, 员工可通过网络技术, 浏览、 进的人力资源管理思想, 却缺乏适合企业特点的、可操作的信 息化管 建立并维护个人在人力资源管理中的数据。使所有 ^ 都从^ 力资源管 理手段, 存在人力资源管理售息化的基础薄弱 ; 人力资源管理流程优化 理中受益。这样不仅减轻了人力资源管理人员用于数据采集、确认和 困难 ; 数据分散 , 管理协调 困难、不及时; 数据真实 i 生无法保证, 难以正 更新的工作量, 也较好的保证了数据的质量和更新的速度。 确监控 ; 信息孤岛现象严重; 信 息集成程度不高, 无法更宏观地利用人 目前软件的开发已出具模型, 但尚不能满足软件跨操作系统、跨 力资源数据 ; 对信 息化的理解与现实有偏差; 缺乏评价标准 , 系统之间 数据库平台、跨应用服务器平台的要求, 且在安装与维护方面的设计 的传 唯 瘦等 问题。 还存在许多空白, 仅仅对功能模块进行了初步的设计, 期望在以后的实 为实现人力资源管理的规范化、系统化和科学化, 构建现代企业 践中进一步的提高。 四 人力资源管理信息系统是加强企业人力资源建设的有效途径。建立具 有企业自身特色的先进人力资源信鼠管理系统, 是解决当前部分企业 参考 文献 : 圃 临的严 势的重 盱段。 【 1 】 刘春 林 , 施建 军 . 打 造人 力 资源 管 理新 模 式— — 来 自国 企的 案 例
信息管理系统方案

(6)用户培训:为用户提供系统操作和管理的培训,提高用户满意度。
(7)系统验收:组织专家对系统进行验收,确保系统满足需求。
六、合法合规性保障
1.严格遵守国家法律法规,确保系统设计和实施过程中不涉及违法违规行为。
2.采取有效措施保护用户信息安全,遵循《中华人民共和国网络安全法》等相关法律法规。
4.合法合规性:遵循国家相关法律法规,确保系统设计和实施过程中合法合规。
四、系统架构与功能模块
1.系统架构
本系统采用分层架构设计,包括前端展示层、业务逻辑层和数据访问层。
2.功能模块
(1)用户管理:实现用户的注册、登录、权限分配等功能,确保系统安全可控。
(2)信息采集:支持多种数据采集方式,如手动输入、文件导入等,满足不同场景需求。
(4)安全防护:采用加密传输、身份认证、访问控制等技术,保障系统安全。
2.实施策略
(1)项目立项:明确项目目标、范围、时间表等,确保项目顺利实施。
(2)需求分析:深入了解用户需求,编制详细需求说明书,为系统设计提供依据。
(3)系统设计:根据需求分析,设计系统架构、功能模块、界面等。
(4)开发实施:按照设计文档,分阶段、分模块进行系统开发。
(3)信息处理:对采集到的信息进行整理、加工、存储,提供高效的信息处理能力。
(4)信息查询:提供多维度、多条件的查询功能,方便用户快速找到所需信息。
(5)数据分析:通过数据挖掘和统计分析,为用户提供决策支持。
(6)系统管理:包括系统设置、权限管理、日志管理等,确保系统稳定运行。
五、技术选型与实施策略
信息管理系统方案
第1篇
信息管理系统方案
职工管理系统课程设计报告

职工管理系统课程设计报告一、项目背景随着信息技术的迅速发展,企业对于职工管理系统的需求日益增长。
职工管理系统作为一种集成化的管理工具,可以帮助企业高效地管理员工信息、薪资福利等相关数据,提升管理效率、节省人力成本。
本课程设计旨在通过开发一个职工管理系统来帮助学生深入理解管理信息系统的基本原理和应用。
二、项目目标本项目旨在设计并实现一个功能完善的职工管理系统,主要包括以下目标: 1. 实现职工信息的录入、修改和查询功能; 2. 实现薪资福利的管理和计算功能; 3. 实现权限管理和安全控制功能; 4. 提升系统的用户友好性和操作性; 5. 实现系统的数据备份和恢复功能。
三、系统需求分析3.1 功能需求1.职工信息管理模块:包括职工信息的录入、修改和查询功能;2.薪资福利管理模块:包括薪资发放、津贴计算等功能;3.权限管理模块:包括用户权限分配和访问控制功能;4.数据备份模块:包括定期数据备份和恢复功能。
3.2 非功能需求1.用户友好性:系统界面简洁明了,操作简单易懂;2.数据安全性:系统应具有良好的数据加密和权限控制机制;3.稳定性:系统应具有一定的容错能力,能够稳定运行。
四、系统设计与实现4.1 系统架构设计本系统采用B/S架构,前端使用HTML、CSS、JavaScript等技术开发,后端采用Java语言搭建,数据库采用MySQL存储数据。
4.2 模块设计1.职工信息管理模块:包括职工信息的增删改查功能;2.薪资福利管理模块:包括薪资发放、津贴计算等功能;3.权限管理模块:包括用户权限分配和访问控制功能;4.数据备份模块:包括数据备份和恢复功能。
4.3 系统界面设计系统界面简洁明了,采用响应式设计,适配不同大小屏幕的设备,提供友好的用户交互体验。
五、系统测试与维护5.1 系统测试系统测试包括单元测试、集成测试、系统测试和用户验收测试,确保系统功能正常、性能稳定。
5.2 系统维护系统上线后需要定期进行数据备份、安全检查和性能优化,确保系统稳定运行。
人事(人力资源)管理信息系统课程设计报告

目录1 引言 (1)2 系统调查与可行性研究 (3)2.1 初步调查 (3)2.2 可行性研究 (6)3 系统分析 (8)3.1 业务流程分析 (8)3.2 数据流程分析 (8)3.3 数据字典 (11)4 系统设计 (19)4.1 功能结构设计 (19)4.2 数据库设计 (19)4.3 代码设计 (28)4.4 输入输出设计 (29)4.5 系统配置设计 (30)5 结束语...............................................................38参考文献 (47)附录 (48)1 引言随着计算机技术的飞速发展,计算机在各种单位机构管理中应用的普及,管理信息系统的开发在强调管理、强调信息的现代社会中也显得越来越重要。
因此,利用计算机支持单位高效率地完成人事管理的日常事务,是适应现代各种单位机构制度要求、推动各种单位机构人事管理走向科学化、规范化的必要条件。
在当今的信息社会,随着信息的不断增长和企业对信息的要求,信息管理技术随之出现。
企业人事管理信息系统是一个现代化的企业在竞争中立于不败之地的必要部分,它能够为查询人事信息提供充足的信息和快捷的查询手段[1]。
一直以来使用传统人工的方式管理文件档案,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难,而且容易丢失。
自20世纪50年代将计算机引入数据处理以来,历经管理信息系统发展的各个阶段。
一方面是信息技术应用的迅猛发展,另一方面,许多管理信息系统在耗费了大量的人力、物力、财力之后夭折了,或者根本没有实现原系统的开发目标,而把计算机用作了打字机。
这是长期以来困惑人们的一大问题[2]。
现在人们日益深刻认识到,把信息技术应用与应用环境分离是办不到的。
管理信息系统根本不仅是技术系统,而且是社会系统。
使用计算机对企业人事信息进行管理,具有手工管理所无法比拟的优点。
员工信息管理系统

摘要企业员工信息管理是企业管理中的一个重要内容,随着时代的进步,企业人员数量也不断增加、分工的不断细化、各个行业间联系的不断密切,对人事管理的要求也不断提高。
如何管理好企业内部员工的信息,对员工实施高效的宏观管理,对企事业单位的人员构成情况和发展趋势进行统计、规划、分析并制定切实可行的人事政策,是一项繁重而艰巨的任务。
本文以企业管理信息系统建设中的员工信息管理子系统的设计和实现为目标,利用软件工程中系统开发的原理和方法,详细论述了系统的设计方案、开发、测试等过程。
系统在Linux平台下,以Oracle10g为后台数据库管理系统,实现了以员工信息管理,考勤信息管理、工资管理及综合查询模块为主要功能的系统开发。
为企业人事管理提供信息咨询,信息检索,信息存取等服务,系统的实施基本上能够满足现代企业对人事管理的需要,为提高企业人事管理效率提供了行之有效的手段。
6第一章职工管理的背景借助现代信息技术和管理理论,建立员工管理信息系统是当今社会的重要趋势。
党和政府根据知识经济时代的特点,对国民经济建设提出了“用信息化带动工业化”的指导思想。
对企业而言,全面开发和应用计算机管理信息系统就是近期不能回避的问题。
在企业管理中,人力资源是企业最宝贵的资源,也是企业的“生命线”,因此职工管理是企业的计算机管理信息系统重要组成部分。
而职工管理又是人力资源管理的重中之重。
实行电子化的职工管理,可以让人力资源管理人员从繁重琐碎的案头工作解脱出来,去完成更重要的工作。
职工管理信息系统的实现可以减轻比较繁琐的手工职工管理。
现在应用在大中型企业的管理信息系统中,几乎都包括了职工管理模块。
有些环境中是由作为大型ERP软件中的一个模块引进的,有些是作为企业的财务系统的一部分。
这些根据规范的西方的管理制度设计的职工管理软件,在很多时候还不能完全解决中国特色的中小企业的问题,所以我们设计了一个简单的职工管理系统,为这些具有中国特色的中小企业解决他们在职工管理方面的问题。
人力资源管理信息系统设计分析

t eb s ese o o c i tr s . ed s n r q i me ta a s fh m n rs u c n g me t n o mai n sse i i to u e r , h u i s c n mi e e t Th ei e u r n n s g e n n l i o u ys a eo r e ma a e n f r t tm s r d c d f s i o y n i t a d t e h v rl d s n a d p r r n e r q ie n f e o n lma a e n u s s m, e r i n d slc o u s s m, n h n t e o e a e i n e o ma c e ur me t o r n e n g me t sb y t l g f s ps e rcut me ta ee t n s b y t n i e
32招聘 与选 拔子 系统 .
该 子 系统 的 主 要 功 能 有 :① 在 招 聘 新 职 工时 该 系统 可 随
时显示职位空缺信息 、 岗位说 明及该岗位必备条件 ; ②在招聘 过程 中建立应聘人员分类档案库 , 追踪所有聘用数据 ; ③招聘
结 束后 办 理 新 职 工 人 职 手 续 ; 在 调 动 和 晋 升 时 。 根 据 显 示 ④ 可
De i n a d An l sso m a s u c a a e e t sg n a y i fHu n Re o r e M n g m n I f r a i n S se n o m to y t m
ZH AN G —m Li
( h 4hReerhIstt o E C s i h agHee 0 0 8 , r a T e5t sa tue f T , a un bi 50 1 Ca ) c ni C z n
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include <stdio.h>#include <string.h>#include <stdlib.h>#include <time.h>#include <conio.h>#define N 100struct employee//职工基本情况{int num; //工号char name[10]; //姓名int sex; //性别int position; //职位int age; //年龄int cult; //学历int salary; //工资int state; //健康情况long tel; //联系电话char adr[50]; //住址}em[N];int num[N]={0};struct employee newem;void mainmenu(); //主菜单void input(); //输入模块void display(); //显示模块void del(); //删除模块void add(); //添加模块void count(); //统计模块void change(); //修改模块int changeposition(); //修改职位int changecult(); //修改学历int changesalary(); //修改工资int changestate(); //修改身体状况void changmany(); //修改多项信息void print(); //打印函数void select(); //查询模块void numselect(); //按工号查询void nameselect(); //按姓名查询void cultselect(); //按学历查询void positionselect(); //按职位查询•2010-7-11 11:46•回复••LUZIF200826•2位粉丝•2楼void stateselect(); //按身体状况查询void sexselect(); //按性别查询void ageselect(); //按年龄区间查询void salaryselect(); //按工资区间查询void paixu(); //排序模块void numpx(); //按工号排序void cultpx(); //按学历排序void positionpx(); //按职位排序void statepx(); //按身体状况排序void agepx(); //按年龄排序void salarypx(); //按工资排序void main() //主函数{char password[7]="1";char s[7];int flag=0;int n=3;system("mode con: lines=100 cols=120 ");do{printf("请你输入密码:\n");scanf("%s",s);if(!strcmp(s,password)) //若密码正确{printf("恭喜你成功登陆了\n\n\n");flag=1;break;}else{printf("输入有错误请重新输入:\n");n--;}}while(n>0);if(!flag){printf("你的输入次数已到再见\n");•2010-7-11 11:46•回复••LUZIF200826•2位粉丝•3楼exit(0);}printf("请按任意键继续!\n");getch();mainmenu();}void mainmenu() //主菜单{int choicemanage=0;while(1){system("cls");printf("\t\t欢迎进入职工信息管理系统\n");printf("\t\t============================\n");printf("\t\t请你选择操作类型:\n");printf("\t\t1输入职工信息\n");printf("\t\t2显示职工信息\n");printf("\t\t3查询职工信息\n");printf("\t\t4修改职工信息\n");printf("\t\t5追加一个职工信息\n");printf("\t\t6删除一个职工信息\n");printf("\t\t7统计职工信息\n");printf("\t\t8对职工信息进行排序\n");printf("\t\t0退出\n");printf("\t\t===========================\n");scanf("%d",&choicemanage);switch(choicemanage){case 1:input(); //输入职工信息break;case 2:display(); //显示职工信息break;case 3:select(); //查询职工信息break;case 4:change(); //修改职工信息break;case 5:add(); //追加一个职工信息break;case 6:del(); //删除一个职工信息•2010-7-11 11:46•回复••LUZIF200826•2位粉丝•4楼break;case 7:count(); //统计职工信息break;case 8:paixu(); //对职工信息进行排序break;case 0:printf("谢谢你的使用再见\n");exit(0);default:printf("你的输入有错请重新输入\n");}}}void input() //输入模块{FILE *fp;int k,j,flag=0,i=0;char choice;system("cls");if((fp=fopen("employee.txt","w"))==NULL)exit(0);srand(time(NULL));while(1){i++;system("cls");printf("第%d个职工\n",i);printf("\n");do{em[i].num=rand()%6000+2000; //自动生成工号for(j=0;num[j];j++){if(num[j]==em[i].num){flag=1;break;}}if(flag!=1){num[i]=em[i].num;break;}}while(1);•2010-7-11 11:46•回复••LUZIF200826•2位粉丝•5楼printf("工号:%d\n",num[i]);printf("请输入姓名:\n"); //输入姓名scanf("%s",em[i].name);printf("\n");do{printf("请选择性别以1为男2为女:\n"); //输入性别scanf("%d",&k);if(k>=1&&k<=2){em[i].sex=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");do{printf("请选择职位1.董事长2.总经理3.副总经理4.经理5.副经理6.秘书7.技术员8.领班9.普通员工:\n");//输入职位scanf("%d",&k);if(k>=1&&k<=9){em[i].position=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入年龄:");scanf("%d",&em[i].age);printf("\n");do{printf("请选择文化程度1为专家2为博士3为硕士4为学士5为其他:\n");//输入文化程度scanf("%d",&k);if(k>=1&&k<=5){em[i].cult=k;break;•2010-7-11 11:46•回复••LUZIF200826•2位粉丝•6楼}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入工资:\n");//输入工资scanf("%d",&em[i].salary);printf("\n");do{printf("请你选择身体情况1好2为一般3为差:\n");//身体情况scanf("%d",&k);if(k>=1&&k<=3){em[i].state=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入联系电话:");scanf("%ld",&em[i].tel);printf("\n");printf("请输入地址:");scanf("%s",em[i].adr);printf("\n");fwrite(&em[i],sizeof(struct employee),1,fp);printf("是否继续输入?(y/n)\n");scanf("%s",&choice);if(choice=='n'||choice=='N')break;}fclose(fp);if((fp=fopen("num.txt","w"))==NULL)exit(0);for(i=0;num[i];i++)fwrite(&num[i],sizeof(int),1,fp);fclose(fp);printf("输入完毕,任意键返回\n");getch();}void display() //显示职工信息{FILE *fp;int i;system("cls");if((fp=fopen("employee.txt","r+"))==NULL){printf("文件不存在或为空,请先输入员工信息!\n");mainmenu();}printf("输出结果:\n");printf("工号\t姓名\t年龄\t性别\t职位\t \t文化程度\t身体情况\t工资\t电话\t住址\n");for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++){print(em[i]);}printf("完毕按任意键返回\n");getch();fclose(fp);}•2010-7-11 11:46•回复•KLZ毕业7楼一大伙作业党要幸福的笑了……•阿宾和白洁•289位粉丝••2010-7-11 11:50 •回复••LUZIF200826•2位粉丝•8楼void change() //修改模块{FILE *fp;int i,k,l=0;int chnum;int choicechange;system("cls");printf("请你输入要修改的人的工号:\n");scanf("%d",&chnum);if((fp=fopen("employee.txt","r+"))==NULL){printf("不能够打开这个文件\n");exit(0);}for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++) ;k=i;fclose(fp);if((fp=fopen("employee.txt","w+"))==NULL){printf("不能够打开这个文件\n");exit(0);}for(i=0;i<k;i++){if(chnum==em[i].num){l=1;printf("这是你要修改的人的信息\n");printf("工号\t姓名\t年龄\t性别\t职位\t \t文化程度\t身体情况\t工资\t电话\t住址\n");print(em[i]);printf("------------------------------------------------------------\n");printf("请选择要修改的部分:\n");printf("\t\t===============================\n");printf("\t\t1仅修改职位\n");printf("\t\t2仅修改文化程度\n");printf("\t\t3仅修改工资\n");printf("\t\t4仅修改身体情况\n");printf("\t\t5修改多项\n");printf("\t\t0返回主菜单\n");printf("\t\t============================\n");•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•9楼printf("请选择\n");scanf("%d",&choicechange);switch(choicechange){case 1:em[i].position=changeposition();break;case 2:em[i].cult=changecult();break;case 3:em[i].salary=changesalary();break;case 4:em[i].state=changestate();break;case 5:newem=em[i];changmany();em[i]=newem;break;case 0:mainmenu();default :printf("输入有错误");}}fwrite(&em[i],sizeof(struct employee),1,fp);}fclose(fp);if(l==0){printf("该员工不存在,请查证后再输入!\n");select();}•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•10楼elseprintf("操作完成按任意键返回主菜单\n");getch();}int changeposition(){int newposition;printf("请选择新职位1为董事长2为总经理3为副总经理4为经理5为副经理6为秘书7为技术员8为领班9为普通员工:\n");scanf("%d",&newposition);return(newposition);}int changecult(){int newcult;printf("请选择新的文凭1为专家2为博士3为硕士4为学士5为其他:\n");scanf("%d",&newcult);return(newcult);}int changesalary(){int newsalary;printf("请输入新的工资:\n");scanf("%d",&newsalary);return(newsalary);}int changestate(){int newstate;printf("请选择现在的身体情况1好2为一般3为差:\n");scanf("%d",&newstate);return(newstate);}void changmany(){int k;system("cls");printf("请依次输入该员工的新信息\n");do{printf("请选择职位1.董事长2.总经理3.副总经理4.经理5.副经理6.秘书7.技术员8.领班9.普通员工:\n");//输入职位scanf("%d",&k);if(k>=1&&k<=9){newem.position=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入年龄:");scanf("%d",&newem.age);printf("\n");do{printf("请选择文化程度1为专家2为博士3为硕士4为学士5为其他:\n");//输入文化程度scanf("%d",&k);if(k>=1&&k<=5){newem.cult=k;•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•11楼break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入工资:\n");//输入工资scanf("%d",&newem.salary);printf("\n");do{printf("请你选择身体情况1好2为一般3为差:\n");//身体情况scanf("%d",&k);if(k>=1&&k<=3){newem.state=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入联系电话:");scanf("%ld",&newem.tel);printf("\n");printf("请输入地址:");scanf("%s",newem.adr);printf("\n");}void add()//追加一个职工信息{struct employee emp;FILE *fp;int l,k,j,flag=0,i=0;system("cls");if((fp=fopen("num.txt","r+"))==NULL)exit(0);for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++);l=i;fclose(fp);if((fp=fopen("employee.txt","ab+"))==NULL){printf("不能够打开这个文件\n");getch();exit(0);}printf("请你输入新人的内容:\n");srand(time(NULL));do{emp.num=rand()%6000+2000; //自动生成工号for(j=0;num[j];j++){if(num[j]==emp.num)•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•12楼{flag=1;break;}}if(flag!=1){num[l]=emp.num;l++;break;}}while(1);printf("请输入姓名:\n"); //输入姓名scanf("%s",);printf("\n");do{printf("请选择性别以1为男2为女:\n"); //输入性别scanf("%d",&k);if(k>=1&&k<=2){emp.sex=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");do{printf("请选择职位1.董事长2.总经理3.副总经理4.经理5.副经理6.秘书7.技术员8.领班9.普通员工:\n");//输入职位scanf("%d",&k);if(k>=1&&k<=9){emp.position=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入年龄:");scanf("%d",&emp.age);printf("\n");do{printf("请选择文化程度1为专家2为博士3为硕士4为学士5为其他:\n");//输入文化程度•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•13楼scanf("%d",&k);if(k>=1&&k<=5){emp.cult=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入工资:\n");//输入工资scanf("%d",&emp.salary);printf("\n");do{printf("请你选择身体情况1好2为一般3为差:\n");//身体情况scanf("%d",&k);if(k>=1&&k<=3){emp.state=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入联系电话:");scanf("%ld",&emp.tel);printf("\n");printf("请输入地址:");scanf("%s",emp.adr);printf("\n");fwrite(&emp,sizeof(struct employee),1,fp);rewind(fp);fclose(fp);if((fp=fopen("num.txt","w+"))==NULL)exit(0);for(i=0;i<l;i++)fwrite(&num[i],sizeof(int),1,fp);fclose(fp);printf("插入完毕,按任意键返回\n");getch();}void del()//删除一个职工信息{int i=0,j=0,l=0,k,b;char choice;int delnum;FILE *fp;if((fp=fopen("employee.txt","r+"))==NULL){printf("文件为空,不能够打开\n");printf("按任意键返回\n");getch();•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•14楼mainmenu();}printf("请你输入要删除的人的工号:\n");//删除的职工的信息scanf("%d",&delnum);for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++) {if(em[i].num==delnum){j=i;l=1;}}k=i;fclose(fp);if(l==0){printf("该员工不存在!\n");mainmenu();}printf("你要删除的职工信息为:\n");printf("工号\t姓名\t年龄\t性别\t职位\t \t文化程度\t身体情况\t工资\t电话\t住址\n");print(em[j]);printf("是否真的删除该职工信息[y/n]\n");scanf("%s",&choice);if(choice=='n'||choice=='N'){printf("取消删除,按任意键返回主菜单!\n");getch();mainmenu();}if((fp=fopen("employee.txt","w+"))==NULL){printf("文件为空,不能够打开\n");printf("按任意键返回\n");getch();mainmenu();}for(i=0;i<k;i++){if(i!=j)fwrite(&em[i],sizeof(struct employee),1,fp);}fclose(fp);if((fp=fopen("num.txt","r+"))==NULL)exit(0);for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++);b=i;fclose(fp);if((fp=fopen("num.txt","w+"))==NULL)exit(0);for(i=0;i<k;i++){•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•15楼if(num[i]!=delnum)fwrite(&num[i],sizeof(int),1,fp);}fclose(fp);printf("删除成功,按任意键返回!\n");getch();}void count(){FILE *fp;int i=0;int num=0;//总人数统计int mnum=0,fnum=0;//性别人数统计int zjnum=0,bsnum=0,ssnum=0,xsnum=0,othernum=0;//学位人数统计int dsznum=0,zglnum=0,fzglnum=0,glnum=0,fglnum=0;//职位人数统计int mishunum=0,jsynum=0,lbnum=0,ygnum=0;system("cls");if((fp=fopen("employee.txt","r+"))==NULL){printf("不能够打开这个文件\n");exit(0);}do{fread(&em[i],sizeof(struct employee),1,fp);if(feof(fp))break;num++;if(em[i].sex==1) //性别统计mnum++;if(em[i].sex==2)fnum++;if(em[i].cult==1) //文凭统计zjnum++;if(em[i].cult==2)bsnum++;if(em[i].cult==3)ssnum++;if(em[i].cult==4)xsnum++;if(em[i].cult==5)othernum++;if(em[i].position==1) //职位统计dsznum++;if(em[i].position==2)zglnum++;•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•16楼if(em[i].position==3)fzglnum++;if(em[i].position==4)glnum++;if(em[i].position==5)fglnum++;if(em[i].position==6)mishunum++;if(em[i].position==7)jsynum++;if(em[i].position==8)lbnum++;if(em[i].position==9)ygnum++;i++;}while(1);printf("总人数为%d\n",num);printf("=======性别分类========\n");printf("男人数为%d\n",mnum);printf("女人数为%d\n",fnum);printf("========文凭分类========\n");printf("专家数为%d\n",zjnum);printf("博士数为%d\n",bsnum);printf("硕士数为%d\n",ssnum);printf("学士数为%d\n",xsnum);printf("其他的数为%d\n",othernum);printf("========职位分类===========\n");printf("董事长数为%d\n",dsznum);printf("总经理数为%d\n",zglnum);printf("副总经理数为%d\n",fzglnum);printf("经理数为%d\n",glnum);printf("副经理数为%d\n",fglnum);printf("秘书数为%d\n",mishunum);printf("技术员数为%d\n",jsynum);printf("领班人数为%d\n",lbnum);printf("普通员工数为%d\n",ygnum);printf("统计完毕,按任意键返回\n");getch();fclose(fp);}void select() //查询模块{int choice;system("cls");printf("请选择查询方式\n");printf("\t\t============================\n");printf("\t\t1按工号查询\n");printf("\t\t2按姓名查询\n");printf("\t\t3按学历查询\n");•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•17楼printf("\t\t4按职位查询\n");printf("\t\t5按身体状况查询\n");printf("\t\t6按性别查询\n");printf("\t\t7按年龄区间查询\n");printf("\t\t8按工资区间查询\n");printf("\t\t0返回主菜单\n");printf("\t\t============================\n"); printf("请选择\n");scanf("%d",&choice);switch(choice){case 1:numselect();break;case 2:nameselect();break;case 3:cultselect();break;case 4:positionselect();break;case 5:stateselect();break;case 6:sexselect();break;case 7:ageselect();break;case 8:salaryselect();break;case 0:mainmenu();break;default:printf("你的输入有错请重新输入\n");select();}}void numselect() //按工号查询{FILE *fp;int i=0;int quenum;if((fp=fopen("employee.txt","r"))==NULL) {printf("不能够打开文件\n");exit(0);}printf("请你输入要查询的人的工号\n");scanf("%d",&quenum);for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++){if(em[i].num==quenum) /*找到,并显示该职工记录*/•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•18楼{printf("工号\t姓名\t年龄\t性别\t职位\t \t 文化程度\t身体情况\t工资\t电话\t住址\n");print(em[i]);printf("查询完毕,按任意键返回\n");getch();fclose(fp);mainmenu();}}printf("没有这样的人,按任意键返回\n");getch();fclose(fp);}void nameselect() //按姓名查询{FILE *fp;int l=0,i=0;char ch;char quename[10];if((fp=fopen("employee.txt","r"))==NULL){printf("不能够打开文件\n");exit(0);}printf("请你输入要查询的人的姓名\n");scanf("%s",quename);printf("工号\t姓名\t年龄\t性别\t职位\t \t文化程度\t身体情况\t工资\t电话\t住址\n");for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++){if(strcmp(em[i].name,quename)==0) /*找到,并显示该职工记录*/{print(em[i]);l++;}}if(l==0)printf("没有这样的人!\n");elseprintf("查询完毕!共查找到%d条记录\n",l);fclose(fp);printf("按1返回上一级菜单,按其他键返回主菜单\n");ch=getch();switch(ch){case '1':select();break;default:mainmenu();•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•19楼}}void cultselect() //按学历查询{FILE *fp;int i=0;char ch;int k,l=0;if((fp=fopen("employee.txt","r"))==NULL){printf("不能够打开文件\n");exit(0);}printf("请选择要查询的人的学历:1为专家2为博士3为硕士4为学士5为其他\n");scanf("%d",&k);printf("工号\t姓名\t年龄\t性别\t职位\t \t文化程度\t身体情况\t工资\t电话\t住址\n");for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i+ +){if(em[i].cult==k) /*找到,并显示该职工记录*/{print(em[i]);l++;}}if(l==0){printf("没有这样的人!\n");getch();}elseprintf("共找到符合条件的%d个职工!\n",l);fclose(fp);printf("按1返回上一级菜单,按其他键返回主菜单\n");ch=getch();switch(ch){case '1':select();break;default:mainmenu();}}void positionselect() //按职位查询{FILE *fp;int i=0;char ch;int k,l=0;if((fp=fopen("employee.txt","r"))==NULL){printf("不能够打开文件\n");exit(0);}printf("请选择要查询的人的职位:1.董事长2.总经理3.副总经理4.经理5.副经理6.秘书7.技术员8.领班9.普通员工\ n");scanf("%d",&k);printf("工号\t姓名\t年龄\t性别\t职位\t \t文化程度\t身体情况\t工资\t电话\t住址\n");for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i+ +){if(em[i].position==k) /*找到,并显示该职工记录*/{print(em[i]);l++;}}if(l==0){printf("没有您所要查询的员工信息!\n");}elseprintf("共找到符合条件的%d个职工!\n");fclose(fp);printf("按1返回上一级菜单,按其他键返回主菜单\n");ch=getch();switch(ch){case '1':select();break;default:mainmenu();}}•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•21楼printf("请选择\n");scanf("%d",&choicechange);switch(choicechange){case 1:em[i].position=changeposition();break;case 2:em[i].cult=changecult();break;case 3:em[i].salary=changesalary();break;case 4:em[i].state=changestate();break;case 5:newem=em[i];changmany();em[i]=newem;break;case 0:mainmenu();default :printf("输入有错误");}}fwrite(&em[i],sizeof(struct employee),1,fp);}fclose(fp);if(l==0){printf("该员工不存在,请查证后再输入!\n");select();}•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•22楼elseprintf("操作完成按任意键返回主菜单\n");getch();}int changeposition(){int newposition;printf("请选择新职位1为董事长2为总经理3为副总经理4为经理5为副经理6为秘书7为技术员8为领班9为普通员工:\n");scanf("%d",&newposition);return(newposition);}int changecult(){int newcult;printf("请选择新的文凭1为专家2为博士3为硕士4为学士5为其他:\n");scanf("%d",&newcult);return(newcult);}int changesalary(){int newsalary;printf("请输入新的工资:\n");scanf("%d",&newsalary);return(newsalary);}int changestate(){int newstate;printf("请选择现在的身体情况1好2为一般3为差:\n");scanf("%d",&newstate);return(newstate);}void changmany(){int k;system("cls");printf("请依次输入该员工的新信息\n");do{printf("请选择职位1.董事长2.总经理3.副总经理4.经理5.副经理6.秘书7.技术员8.领班9.普通员工:\n");//输入职位scanf("%d",&k);if(k>=1&&k<=9){newem.position=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入年龄:");scanf("%d",&newem.age);printf("\n");do{printf("请选择文化程度1为专家2为博士3为硕士4为学士5为其他:\n");//输入文化程度scanf("%d",&k);if(k>=1&&k<=5){newem.cult=k;•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•23楼break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入工资:\n");//输入工资scanf("%d",&newem.salary);printf("\n");do{printf("请你选择身体情况1好2为一般3为差:\n");//身体情况scanf("%d",&k);if(k>=1&&k<=3){newem.state=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入联系电话:");scanf("%ld",&newem.tel);printf("\n");printf("请输入地址:");scanf("%s",newem.adr);printf("\n");}void add()//追加一个职工信息{struct employee emp;FILE *fp;int l,k,j,flag=0,i=0;system("cls");if((fp=fopen("num.txt","r+"))==NULL)exit(0);for(i=0;fread(&em[i],sizeof(struct employee),1,fp)!=0;i++);l=i;fclose(fp);if((fp=fopen("employee.txt","ab+"))==NULL){printf("不能够打开这个文件\n");getch();exit(0);}printf("请你输入新人的内容:\n");srand(time(NULL));do{emp.num=rand()%6000+2000; //自动生成工号for(j=0;num[j];j++){if(num[j]==emp.num)•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•24楼{flag=1;break;}}if(flag!=1){num[l]=emp.num;l++;break;}}while(1);printf("请输入姓名:\n"); //输入姓名scanf("%s",);printf("\n");do{printf("请选择性别以1为男2为女:\n"); //输入性别scanf("%d",&k);if(k>=1&&k<=2){emp.sex=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");do{printf("请选择职位1.董事长2.总经理3.副总经理4.经理5.副经理6.秘书7.技术员8.领班9.普通员工:\n");//输入职位scanf("%d",&k);if(k>=1&&k<=9){emp.position=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入年龄:");scanf("%d",&emp.age);printf("\n");do{printf("请选择文化程度1为专家2为博士3为硕士4为学士5为其他:\n");//输入文化程度•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•25楼scanf("%d",&k);if(k>=1&&k<=5){emp.cult=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入工资:\n");//输入工资scanf("%d",&emp.salary);printf("\n");do{printf("请你选择身体情况1好2为一般3为差:\n");//身体情况scanf("%d",&k);if(k>=1&&k<=3){emp.state=k;break;}elseprintf("您的输入有误,请重新输入!\n");}while(1);printf("\n");printf("请输入联系电话:");scanf("%ld",&emp.tel);printf("\n");printf("请输入地址:");scanf("%s",emp.adr);printf("\n");fwrite(&emp,sizeof(struct employee),1,fp);rewind(fp);fclose(fp);if((fp=fopen("num.txt","w+"))==NULL)exit(0);for(i=0;i<l;i++)fwrite(&num[i],sizeof(int),1,fp);fclose(fp);printf("插入完毕,按任意键返回\n");getch();}void del()//删除一个职工信息{int i=0,j=0,l=0,k,b;char choice;int delnum;FILE *fp;if((fp=fopen("employee.txt","r+"))==NULL){printf("文件为空,不能够打开\n");printf("按任意键返回\n");getch();•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•27楼if(num[i]!=delnum)fwrite(&num[i],sizeof(int),1,fp);}fclose(fp);printf("删除成功,按任意键返回!\n");getch();}void count(){FILE *fp;int i=0;int num=0;//总人数统计int mnum=0,fnum=0;//性别人数统计int zjnum=0,bsnum=0,ssnum=0,xsnum=0,othernum=0;//学位人数统计int dsznum=0,zglnum=0,fzglnum=0,glnum=0,fglnum=0;//职位人数统计int mishunum=0,jsynum=0,lbnum=0,ygnum=0;system("cls");if((fp=fopen("employee.txt","r+"))==NULL){printf("不能够打开这个文件\n");exit(0);}do{fread(&em[i],sizeof(struct employee),1,fp);if(feof(fp))break;num++;if(em[i].sex==1) //性别统计mnum++;if(em[i].sex==2)fnum++;if(em[i].cult==1) //文凭统计zjnum++;if(em[i].cult==2)bsnum++;if(em[i].cult==3)ssnum++;if(em[i].cult==4)xsnum++;if(em[i].cult==5)othernum++;if(em[i].position==1) //职位统计dsznum++;if(em[i].position==2)zglnum++;•2010-7-11 12:11•回复••LUZIF200826•2位粉丝•28楼if(em[i].position==3)fzglnum++;if(em[i].position==4)glnum++;if(em[i].position==5)fglnum++;if(em[i].position==6)mishunum++;。