《C语言课程设计职工信息管理系统》由会员分享,可在线阅读,更多相关《C语言课程设计职工信息管理系统(22页珍藏版)》请在金锄头文库上搜索。
1、中国海洋大学青岛学院C语言课程设计报告书题 目职工信息管理系统学生姓名指导教师学 院专业班级1 组内分工姓名主要任务占系统比例录入及密码登录功能25%修改及删除功能25%查询及密码修改功能25%统计及退休功能25%目 录1 前言12 需求分析23 模块设计图34 NS流程图清单45 存储结构及函数说明96 课程设计结果127 实践心得体会19IC语言课程设计报告1 前言主要目的:通过程序设计,锻炼自己动手实践能力和团队合作能力,将自己所思所想与组内成员的思想混合共同探讨,继而以代码的形式展现在屏幕上。在合作中发现问题,解决问题;不断改进,完善对知识的理解和掌握。课题理解:当今社会很多公司都聘请
2、员工来维持产业正常运作,然而大量的员工也带来了管理上的不便,因此需要用计算机来统一管理员工的信息。而想要在计算机上解决复杂的统计查询等功能,必须要一个功能完备的易于操作的管理系统。一个合理的管理系统将方便管理者对其公司成员进行统计规划等一系列大规模管理行动。我们将通过现今掌握的知识来开发一个小型管理系统。大略步骤将通过一步步流程的细节分支来定义每一个成员函数;不断调试不断改进。最终通过现有的知识,开发出了我们心中所想的职工信息管理系统。2 需求分析 对职工的信息:职工编号、姓名、性别、年龄、工资、电话号码等进行系统的可操作化管理。可以通过登录界面选择对职工信息的录入,修改,查询,统计等功能,另
3、外为保证职工个人信息安全还设计了密码进入功能。 1. 提示界面:在整个系统操作中会有多次出现提示界面,方便用户进入其所需要的操作。2. 密码功能:根据操作界面的提示输入密码,修改密码,或退出系统。3录入功能:将职工的基本信息录入到总数据文件中并进行储存,以方便实现可查询功能。4修改功能:对已录入的总数据文件中的职工基本信息数据,进行修改或删除操作。5查询功能:根据操作界面提示输入关键数据,然后在总数据文件中找到符合的信息,并进行输出。6统计功能:对职工基本信息数据进行必要的统计,以便管理人员更直观的对职工的信息有整体把握。3 模块设计图密码修改录入功能按姓名职工信息管理系统修改功能按联系方式删
4、除功能完整信息查询显示全部密码登录查询功能统计工资统计查询退休功能统计年龄返回上层统计职位退出退出4 NS流程图清单1.密码登录2. 录入函数3.密码修改4.查询函数5. 修改函数6.删除函数7.统计函数8.退休函数5 存储结构及函数说明 将录入的职工写入到文件中,其后程序中各功能的实现将以此文件中的信息为操作基础。 程序代码中函数解释说明:1. 结构体变量: struct worker 定义结构体变量 int age; 变量 年龄 char name8 姓名 。 ;2. 密码登录及修改:密码登录: char M10; 输入密码 fgets(str,8,fp) 从文件中读取已存密码 strcm
5、p(M,str)=0 将两者匹配,成功后进入密码修改: 同上输入原密码进行匹配,输入新密码 fputs(M,fp)匹配成功将新密码写入文件3. 录入 set() 录入函数 worker newer; scanf(”s%”,newer.name); fputs(newer.name,fp1); 。 以此方式将数据录入到信息文件中4. 管理(1)修改函数modify()及修改职位函数*changejob(),修改联系方式函数*changetelephone(),修改工资函数changesalary()char changename8; 输入要修改员工的姓名for(i=0;inumber;i+)fs
6、canf(fp,%s%d%s%s%s%d,empi.name,&empi.age,empi.sex,empi.tele_number,empi.job,&empi.salary); 从文件中查找if(strcmp(changename,empi.name)=0) 判断,成功后输出信息strcpy(empi.job,changejob(); 赋新值for(i=0;inumber;i+)fprintf(fp1,%st%dt%st%st%st%d,empi.name,empi.age,empi.sex,empi.tele_number,empi.job,empi.salary);fputs(n,fp
7、1); 将修改后的信息写入“信息“文件(2)删除函数delete() 同上输入要删除人姓名,从文件中读取此人信息,记录其下标 for(k=index;k=salary) i+; 找出年龄大于age的个数(2)退休函数 retirement() worker newer,newer1n; int age; 输入要退休年龄的最小值 if(newer.age=age) printf(name:%s age:%dn,newer.name,newer.age); i+; 找出符合的人数fputs(newer.name,fp3); 以此方式将退休人员信息从“信息“文件中删除并放入到一个文件中6 课程设计结
8、果登陆界面修改密码登入成功录入职工修改删除查询退休7 实践心得体会 这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,比如:1.录入的信息写入不了文件。 解决方法:改变文件的写入方法,由“w”改成“a+”进行追加。2.各模块进行整合的时候,出现许多的错误,后来发现是变量不统一。 解决方法:各模块统一变量。3.修改时,修改后的信息在文件中修该不了。解决方法:存入文件时要先关闭文件,再调用函数。课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在生活中可以说得是无处不
9、在。因此作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。回顾起此次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完成整个编程,从理论到实践,在这些日子里,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说结构体通过这次课程设计之后,一定把以前所学过的知识重新温故。对给过我帮助的所有同学和各位指导老师再次表示忠心的感谢!19