C语言课程设计人事管理报告.docVIP

  • 10
  • 0
  • 约1.25万字
  • 约 11页
  • 2018-10-09 发布于重庆
  • 举报
C语言课程设计人事管理报告

C语言程序设计上机实习报告 指导教师:吴杰 学生姓名:董建光 学生学号:20051000746 班级序号:023052 题目编号:23 人事管理系统 一. 题目要求 设计某高校的人事管理系统,实现人员档案信息的添加删除,查询,编辑,统计,排序,保存等功能模块,本程序有功能菜单实现,数据输入和结果输出均用文件存放。 (1) 添加删除功能:根据人事变动的情况,添加删除记录; (2) 查询功能:能根据编号和姓名进行查询; (3) 统计功能:能根据多种参数进行人员的统计,统计要求同时显示被统计者信息; (4) 编辑功能:根据查询对相应的记录进行修改,并储存; (5) 排序功能:按照年龄,来院时间进行排序; (6) 保存功能:能对输入的数据进行相应的存储; 二.需求实践分析 需要熟练掌握C语言的基本知识:数据类型(整形、实型、字符型、数组、结构体等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的使用)等。根据题目要求,由于人事信息是存放在文件中,所以应提供文件的输入和输出等操作;在程序中需要浏览职工的信息,应提供显示,查找,排序等操作;另外还应提供键盘式选择菜单实现功能选择。 三. 总体设计 割据上面的需求分析,可以将这个系统的设计分为追加模块,修改模块,删除模块,查找 四.感受与总结 优点:如果修改成功,则此算法功能强大而齐备,能够比较全面的对数据信息进行处理,能够综合我们学习的文件处理知识,对于知识与技巧的掌握很有帮助。 缺点:各个功能模块之间有重叠,使程序比较缀余,而且编译浪费时间。此外本程序的主要漏洞在于加载函数,保存函数及所用到的几个基本函数,其运行出错在于函数总体结构有问题。 感受:我认为可以将所有的函数全部写成一个函数的嵌套形式,使得程序更加简洁,可惜我还不能实现,可以不用菜单,只留下查找函数将其他的加入其内部,使用者也比较容易看懂。此外还应该考虑一下查找和排序的效率问题,排序我用的是快速排序法可以短时间内处理大量数据,但查找就比较麻烦,还需改进,请老师帮忙改进。 学了将近一个学期的C语言了,说实话,挺疲惫的,特别是最后的课设,调得好烦。但现在想想收获也不小,以前一直觉得计算机语言挺简单的,现在看来当时根本没有接触到计算机语言的精髓。 看到了自己做的这个小程序,挺自豪的,虽然它的运行还有不少问题,但毕竟是自己五天来的心血,以前一直以为做出一个软件一样的程序是遥不可及的事情。其实我认为对于我们来说更重要的是过程这五天我踏踏实实的去做了,认认真真去改了,真正的学到了不少自己应该知道却不曾知道的许多知识,同时也明白了实习的重要性,实习的经验一定会让我受益匪浅的。这次实习以后再碰到像等级考试这样的事情我就再也不怕了。 感谢吴杰老师的辛苦指导。 恭维的话就不多说了,感受大概就这么多吧。 五.附录 #includelt;stdio.hgt; #includelt;string.hgt; #define N 900 /*控制教职工人数*/ struct information { char num[11]; /*人员编号*/ char name[15]; /*姓名*/ char sex[5]; /*性别*/ int age; /*年龄*/ char duty[5]; /*职务*/ char p_title[5]; /*职称*/ char politic[5]; /*政治面貌*/ char edu[5]; /*最高学历*/ struct data{ int year;int month;int day; } in_data; /*在职时间*/ int stay_time; /*来院时间,以天为单位*/ int type; /*人员类别;0表示资料被删除;1表示在职人员;2表示退休人员;3表示临时工*/ }infor[N]; save(int n) /*保存函数,保存n个记录*/ {FILE *fp; int i; if((fp=fopen(quot;c:\\worker_l.txtquot;,quot;wquot;))==NULL) /*以输出打开方式,在此前的记录被覆盖*/ {printf(quot;\nCannot open file\nquot;); return NULL; } for(i=0;ilt;n;i+

文档评论(0)

1亿VIP精品文档

相关文档