随着中小企业的不断发展,企业内部员工沟通就显得非常重要,通过一个企业管理系统能解决员工沟通困难的问题。它可以实现发布消息,查看消息,删除消息等功能。
本实验要求设计一个简单的企业管理系统,涉及函数、结构体、链表、文件等方面的知识,学习利用链表处理数据的方法,熟练掌握文件操作,构建综合程序设计的思路及框架,提高综合设计软件系统的能力。
数据文件分为2个,employee.txt
与things.txt
。employee.txt
包括了所有员工的个人信息,具体包括员工编号、姓名、部门、工资、直系领导等。things.txt
包括员工编号与分配任务。格式如下所示。
具体的数据信息与内容可自行设定,但要保证直系领导存在传递关系。
员工信息
1 小悦悦 保洁部 20000 2
2 大悦悦 财务部 2500 4
事务信息
1 打扫CEO办公室
1 窃取高级商业情报
设计一个员工管理系统,利用单链表来处理员工信息与事务信息,要求实现如下系统功能。
程序开始运行后显示菜单,要求菜单能完全展示本系统的功能,尽力做到设计美观。
考虑到本系统有多个文件,需要提示用户输入来选择需要操作的文件是员工信息还是事务信息。
选择员工信息文件后,按员工编号、姓名、所在部门查询员工所有信息。提示用户输入待查人员的员工编号、姓名、所在部门,显示符合条件的联系人所有信息。如果没有满足要求的联系人,输出提示信息。
可输出全部员工信息,若当前企业没有员工,输出提示信息。
选择事务信息文件后,按员工编号查询事务信息。提示用户输入待查事务的员工编号显示符合条件的事务信息。如果没有满足要求的事务,输出提示信息。
可输出全部事务信息,若当前企业没有事务,输出提示信息。
按指定的员工编号、姓名删除员工信息中对应记录,删除时应删除该员工的所有信息并提示删除成功。若此员工不存在,输出提示信息。
修改指定员工的信息。提示用户输入要修改的员工编号,若此编号存在,则提示选择修改员工信息中的姓名、所在部门、工资或者只系领导。若该员工编号不存在,输出提示信息。
通过控制台增加员工信息,提示用户输入待增加的员工编号,如果编号存在,提示编号已经存在;如果不存在,则逐项录入此员工的每一条信息。
通过控制台增加事务信息,提示用户输入分配给事务的员工编号,录入待增加的事务。
按照员工的工资进行排序,输出排序后员工信息。
将当前员工信息与事务信息分别保存到txt文件中。
根据员工信息文件中的直系领导数据,构建一个员工$\rightarrow$领导$\rightarrow$领导的领导$\rightarrow \cdots \rightarrow$的关系链表。用户可以通过输入员工编号来查询并输出此员工所有的直系领导。如果此员工没有直系领导,输出提示信息。
用户可通过输入特定指令来退出程序,在用户输入退出指令之前,程序不得自行退出。
根据系统功能描述,采用模块化程序设计方法进行程序设计,要求程序结构清晰。上述各个功能模块要求分别用函数实现,在主函数中通过调用这些函数,完成系统功能的要求。代码书写要规范,有简要的注释,给出函数说明。
设计报告内容包括题目内容和要求、总体设计、详细设计、源代码、调试过程中的问题、总结等。
总体设计:对程序的整体设计思路进行描述,画出系统的总体功能模块图,说明系统使用的主要数据结构,列表给出需要用到的函数并描述其功能。
详细设计:画出函数调用关系图,分析并描述函数的功能。
调试过程中的问题:记录程序编写和调试过程中遇到的各种问题,以及解决这些问题的途径和方法。
总结:回顾整个综合程序设计的过程,对学习到的设计方法和思路进行总结,写出个人体会。