- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《C语言课程设计 高校人事管理程序》
《C语言程序设计》
课程设计报告
系 部: 三 系
班 级: 11通信(1)班
学 号: 20110306111
姓 名: 张梦瑶
设计题目: 高校人事管理程序
成 绩:
指导教师: 徐 化 祥
开课时间: 2011-2012学年第2学期
2012 年 6 月
课程设计(报告)内容要求:
1.课程设计的目的
(1)熟练掌握C语言的基本知识和技能;掌握程序设计的和方法;利用所学的基本知识和技能解决问题
(1)设计一个功能菜单,将程序的各个功能显示出来,并有选择提示;
(2)应包含职工的职工号、职工姓名、性别、出生日期、部门、岗位角色、职称、工龄、来校时间、月收入等职工基本信息;
(3)要求有错误提示功能。例如输入数据错误,提示用户重新输入。
(4)具有新增、修改、删除等功能;
(5)具有查询功能,且能够按职工号或职工姓名查询某一职工的信息。
(6)使用文件功能,信息的输入输出用文件的存取和显示的方式,建立文件,直接存取默认文件或指定文件。
3. 提交内容:
(1)电子文档:可执行文件(.exe)功能描述
输入记录模块。输入记录模块主要完成将数据存入数组中的工作。在此高校人事信息管理系统中,记录可以从以二进制形式存储的数据文件中读入,也可以从键盘逐个输入记录。记录由职工的基本信息字段构成。当从数据文件中读入记录时,它就是在以记录为单位存储的数据文件中,将记录逐条复制到数组元素中。
查询记录模块。查询记录模块主要完成在数组中查找满足相关条件的记录。在此人事管理系统中,用户可以按照职工编号或姓名在数组中进行查找。若找到该记录,则以表格形式打印出此记录的信息;否则,返回一个-1的值,并打印出未找到记录的提示信息。
更新记录模块。更新记录模块主要完成对记录的维护。在此人事管理系统中,实现对记录的修改、删除和排序操作。一般而言,系统进行了这些操作之后,需要将修改的数据存入源数据文件。
统计记录模块。统计记录模块主要完成对职工总人数、性别、工龄在各等级的统计。
输出记录模块。输出记录模块主要完成两个任务。第一,它实现对记录的存盘操作,即将数组中各元素中存储的记录信息写入数据文件中。第二,它实现将数组中存储的记录信息以表格的形式在屏幕上打印出来。
图1 高校人事管理系统功能模块图
总体设计
(一)功能模块设计
1.主控main()函数执行流程
高校人事管理系统执行主流程如图2所示。它先以可读写的方式打开数据文件,此文件默认为“c:\zgxx”,若该文件不存在,则新建此文件。当打开文件操作成功后,则从文件中一次读出一条记录,添加到新建的数组中,然后执行显示主菜单和进入主循环操作,进行按键判断。
在判断键值时,有效的输入为0—8之间的任意数值,其他输入都被视为错误按键。若输入为0(即变量select=0)—8之外的值,则调用Wrong()函数,给出按键错误的提示。
图2 主控函数执行流程图
2.输入记录模块
输入记录模块主要实现将数据存入数组中。当从数据文件中读出记录时,它调用fread(zg[count],sizeof(ZGXX),1,fp)文件读取函数,执行一次从文件中读取一条职工信息记录存入某个数组元素中的操作,并且这个操作在main()中调用执行,即在人事管理系统进入显示菜单界面时,该操作已经执行了。若该文件中没有数据,系统会提示数组为空,没有任何记录可操作,此时,用户选择1,调用Add()函数,进行记录的输入,既完成在数组中添加元素的操作。
3.查询记录模块
查询记录模块主要实现在数组中按职工编号或姓名查找满足相关条件的记录。在查询函数Qur()中,为了遵循模块化编程的原则,我们将在数组中进行的记录定位操作设计成了一个单独的函数int Locate(ZGXX v[],char message[],char way[]),参数message[]保存要查找的具体内容,way[]保存要查找的字段(值为字符串类型的num或者name),若找到该记录,则返回指向该记录的数组元素下标;否则,返回一个-1的值。
4.更新记录模块
更新记录模块主要实现对记录的修改、删除和排序操作。因为记录是以数组的结构形式存储的,所以这些操作都在数组中完成。下面分别介绍这3个功能模块。
修改记录
修改记录操作需要对数组中目标元素域中的值进行修改,它分两步完成。第一步,输入要修改的职工编号,输入后调用定位函数Locate()在数组中逐个对职工编号字段的值进行比较,直到找到该职工编号的记录;第二步,若找到该记录,则修改除职工编号之外的各字段的值,并将存盘标记变量saveflag
您可能关注的文档
最近下载
- 全品作业本英语七年级上册听读本.pdf VIP
- GB∕T 2997-2015 致密定形耐火制品体积密度,显气孔率和真气孔率试验方法.pdf
- 《餐饮服务管理系统》课件.pptx VIP
- 在线网课学习课堂《文科物理学——生活中的物理》单元测试考核答案.docx VIP
- (正式版)D-L∕T 1919-2018 发电企业应急能力建设评估规范.docx VIP
- (2025春)人教版二年级数学上册全册教案.doc
- 公路工程全套资料填写例范本.docx VIP
- 2025港航工程一建案例200问记忆宝典.docx VIP
- [广安]2025年四川省广安市前锋区引进人才笔试历年参考题库附带答案详解.pdf
- 2025年新人教版数学2年级上册全册同步教学课件.pptx
文档评论(0)