c语言职工信息管理系统.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
c语言职工信息管理系统

目????????录 一、课程设计目的……………………………………………………3 二、设计题目分析……………………………………………………3 2.1题目简介………………………………………………………?3 2.2设计要求………………………………………………………?3 三、课程设计内容……………………………………………………3 3.1总体设计………………………………………………………?3 3.2详细设计………………………………………………………?4 3.3调试与测试……………………………………………………?12 四、设计心得与总结:………………………………………………13 五、附录(完整源程序清单)?…………………………………………14 ? ? 一、课程设计目的 通过亲自设计程序,可以令我们熟悉c语言操作,更熟练的掌握c语句。初步体会编程的过程,为将来的程序深入学习打下基础和培养兴趣。 二、设计题目分析 2.1?题目简介 可以向文件中写入、删除、添加职工信息,也可以从文件中导出来浏览 2.2?设计要求 职工信息包括职工号、姓名、性别、年龄、学历、工资、住址、电话等(职工号不重复)。试设计职工信息管理系统,使之能提供以下功能: 系统以菜单方式工作。 职工信息录入功能(职工信息用文件保存)--输入 职工信息浏览功能?--输出 查询和排序功能:(至少一种查询方式)??--算法 ??????按职工号查询 ??????按学历查询等 职工信息删除、添加功能 三、课程设计内容 ???? ? 3.2?详细设计:? ? ? 1、主函数:main()   显示系统工作菜单,罗列该系统所有功能。先声明所有将会调用到的函数名。再运用选择函数switch即可根据使用者所输入的功能代号进入对应的功能程序。亮点:定义一个全局指针变量*p和全局变量a。其中a表示当前系统中职工人数,p指向a的地址,追踪人数变化,这样在添加或者删除导致人数变化后,浏览函数display()能够正确显示出当前人数的职工信息。宏定义define??N指定首次输入的职工人数,可根据不同需要随时更改。 ? ? ????????? 3、保存函数:void?save(int?m)   定义文件指针fp,用fopen只写打开指定在D盘的“d://bbb.txt”文本文件。首先用if语句判断文件是否打开成功,若fopen返回值不为0,则可继续下面操作。用for循环通过fprintf语句将结构数组em中的内容写入保存在D盘的文本文件里面。形参m指需要写入文件的职工人数。最后关闭文件。 ? ??????????? 4、导出函数:void?load(int?b) ????首先判断fopen只读打开“d://bbb.txt”是否成功,若其返回值不为零,继续下面操作。用for循环通过fscanf语句将文件中的职工信息取出放到em结构数组里面。形参b指需要导出的职工人数。最后关闭文件。 ?????????? 5、浏览函数void?display(int?a) ???声明整形变量i和b,其中i记录输出的职工序数,b用来接收调用浏览函数时所传递过来的实参,接着将其值传递给导出函数load(b),使得导出的职工人数与浏览的职工人数保持一致。通过调用load函数后(即给em数组附值),用for循环输出每个职工的各种信息。 ?? 8、按姓名查询void?search_name() ????声明整形变量i和字符形数组name[20],调用导出函数load(*p),用scanf语句输入要查询的职工名字(字符串)放在数组name里面。用for循环,循环主体是先判断em.name中是否有输入的职工姓名,如果有,用printf语句输出与职工名字相对应的该职工所有信息,再跳出循环;如果没有,输出“查无此人”,并调用search()返回查询菜单。 ? 流程图同上 ? 9、按学历查询void?search_xueli() ????声明整形变量i,k=0,char形数组xueli[20]。调用导出函数load(*P),用scanf语句输入要查询的职工学历(字符串)放在数组xueli里面。考虑到与前两种查询方式不一样的是,可能有多个职工具有相同的学历,所以循环主体较之前稍有变化。即在判断并执行第一次后不用break,而是继续循环,直到找出所有该学历的职工。为解决输入错误而提示“查无此人”的问题,就需要再写一段for循环代码,通过计量数k记录循环的次数,若直到循环到最后一次仍无结果输出,则表示输入错误,这时用printf输出“查无此人”,并调用search()返回查询菜单。 ? 流程图同上 ? 10、,删除函数void?del(int?*b) ????声

文档评论(0)

文档精品 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6203200221000001

1亿VIP精品文档

相关文档