Skip to content

Latest commit

 

History

History

EnterpriseManageSystem

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

企业管理系统

随着中小企业的不断发展,企业内部员工沟通就显得非常重要,通过一个企业管理系统能解决员工沟通困难的问题。它可以实现发布消息,查看消息,删除消息等功能。

本实验要求设计一个简单的企业管理系统,涉及函数、结构体、链表、文件等方面的知识,学习利用链表处理数据的方法,熟练掌握文件操作,构建综合程序设计的思路及框架,提高综合设计软件系统的能力。

1. 数据格式与功能描述

1.1 数据文件格式

数据文件分为2个,employee.txtthings.txtemployee.txt包括了所有员工的个人信息,具体包括员工编号、姓名、部门、工资、直系领导等。things.txt包括员工编号与分配任务。格式如下所示。

具体的数据信息与内容可自行设定,但要保证直系领导存在传递关系。

员工信息

1 小悦悦 保洁部 20000 2
2 大悦悦 财务部 2500 4

事务信息

1 打扫CEO办公室
1 窃取高级商业情报

1.2 功能描述

设计一个员工管理系统,利用单链表来处理员工信息与事务信息,要求实现如下系统功能。

(1) 初始化菜单

程序开始运行后显示菜单,要求菜单能完全展示本系统的功能,尽力做到设计美观。

(2) 选择待操作的文件

考虑到本系统有多个文件,需要提示用户输入来选择需要操作的文件是员工信息还是事务信息。

(3) 查询员工信息与事务信息

选择员工信息文件后,按员工编号、姓名、所在部门查询员工所有信息。提示用户输入待查人员的员工编号、姓名、所在部门,显示符合条件的联系人所有信息。如果没有满足要求的联系人,输出提示信息。

可输出全部员工信息,若当前企业没有员工,输出提示信息。

选择事务信息文件后,按员工编号查询事务信息。提示用户输入待查事务的员工编号显示符合条件的事务信息。如果没有满足要求的事务,输出提示信息。

可输出全部事务信息,若当前企业没有事务,输出提示信息。

(4) 删除员工信息与事务信息

按指定的员工编号、姓名删除员工信息中对应记录,删除时应删除该员工的所有信息并提示删除成功。若此员工不存在,输出提示信息。

(5) 修改员工信息

修改指定员工的信息。提示用户输入要修改的员工编号,若此编号存在,则提示选择修改员工信息中的姓名、所在部门、工资或者只系领导。若该员工编号不存在,输出提示信息。

(6) 增加员工信息与事务信息

通过控制台增加员工信息,提示用户输入待增加的员工编号,如果编号存在,提示编号已经存在;如果不存在,则逐项录入此员工的每一条信息。

通过控制台增加事务信息,提示用户输入分配给事务的员工编号,录入待增加的事务。

(7) 员工排序

按照员工的工资进行排序,输出排序后员工信息。

(8) 保存员工信息与事务信息

将当前员工信息与事务信息分别保存到txt文件中。

(9) 输出管理层级顺序

根据员工信息文件中的直系领导数据,构建一个员工$\rightarrow$领导$\rightarrow$领导的领导$\rightarrow \cdots \rightarrow$的关系链表。用户可以通过输入员工编号来查询并输出此员工所有的直系领导。如果此员工没有直系领导,输出提示信息。

(10) 退出系统

用户可通过输入特定指令来退出程序,在用户输入退出指令之前,程序不得自行退出。

1.3 要求

(1) 源程序编写要求

根据系统功能描述,采用模块化程序设计方法进行程序设计,要求程序结构清晰。上述各个功能模块要求分别用函数实现,在主函数中通过调用这些函数,完成系统功能的要求。代码书写要规范,有简要的注释,给出函数说明。

(2) 设计报告撰写要求

设计报告内容包括题目内容和要求、总体设计、详细设计、源代码、调试过程中的问题、总结等。

总体设计:对程序的整体设计思路进行描述,画出系统的总体功能模块图,说明系统使用的主要数据结构,列表给出需要用到的函数并描述其功能。

详细设计:画出函数调用关系图,分析并描述函数的功能。

调试过程中的问题:记录程序编写和调试过程中遇到的各种问题,以及解决这些问题的途径和方法。

总结:回顾整个综合程序设计的过程,对学习到的设计方法和思路进行总结,写出个人体会。

2 问题分析

3 总体设计

3.1 功能模块设计

3.2 系统界面设计

3.3 数据结构设计

3.4 函数设计

4 详细设计

4.1 各个函数的调用关系图

4.2 各个函数功能描述

5 功能测试

6 总结