1、 - 1 - 信息科学与工程学院 数据结构课程设计报告 课程名称: 数据结构课程设计 班 级: 学 号: 姓 名: 指导教师: 二一三年 六 月 - 2 - 职工管理系统课程设计报告 一、需求分析一、需求分析 职工管理系统是一个工作单位不可缺少的管理工具,它管理的数据对于公司 的决策者和管理者来说都至关重要, 所以职工管理系统应该能够为用户提供充足 的信息和快捷的查询手段。 但一直以来各个公司基本上都是靠传统的人工方式来 管理职工信息,这种管理方式存在着许多缺点,如:效率低、保密性差,另外时 间一长,将产生大量的文件和数据,这对于信息的查找、更新和维护都带来了不 少的困难。 当今社会,信息迅速
2、膨胀,随着各个公司的规模增大,有关信息管理工作所 涉及的数据量越来越大,职工信息量也大大增加,利用传统的手工查询、登记、 修改等方法的处理速度远远跟不上公司的需求,有的公司不得不靠增加人力、物 力来进行信息管理。 随着计算机技术的不断提高,计算机作为知识经济时代的产物,其强大的功 能已为人们深刻认识, 它已进入人类社会的各个行业和领域并发挥着越来越重要 的作用,成为人们工作和生活中不可缺少的一部分。 而作为计算机应用的一部分,使用计算机对职工进行管理,具有手工管理所 无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好、 寿命长、成本低等。这些优点能够极大地提高职工管理的效率
3、,也是公司的科学 化、正规化管理和与世界接轨的重要条件。 职工管理系统作为一种管理软件正在各公司中得到越来越广泛的应用,且已 达到了良好效果。 简单的职工管理系统: 1、问题描述 对单位的职工进行管理,包括插入、删除、查找、排序等功能。 2、要求 职工对象包括姓名(字符串) 、性别(字符) 、出生年月(数字) 、工作年月 (数字) 、学历(字符串) 、职务(字符串) 、住址(字符串) 、电话(字符串)等 信息。 (1)新增一名职工:将新增职工对象按姓名以字典方式职工管理文件中。 (2)删除一名职工:从职工管理文件中删除一名职工对象。 (3)查询:从职工管理文件中查询符合某些条件的职工。 (4)
4、修改:检索某个职工对象,对其某些属性进行修改。 (5)排序:按某种需要对职工对象文件进行排序。 3、实现功能 - 3 - (1)由键盘输入职工对象,以文件方式保存。程序执行时先将文件读入内 存。 (2)对职工对象中的“姓名”按字典顺序进行排序。 (3)对排序后的职工对象进行增、删、查询、修改、排序等操作。 二、概要设计二、概要设计 1、输入功能的实现:要想实现职工管理系统的输入,必须要建立一个职工 信息系统的抽象数据类型,其中职工信息以链表的存储方式实现。由键盘输入职 工对象,以文件方式保存。程序执行时先将文件读入内存。 2、系统处理功能的实现:系统管理员根据公司的人员流动情况,在提示信 息的
5、提示下,选择相应的服务进行操作。如对职工对象中的“姓名“按字典顺序进 行排序;对排序后的职工对象进行增、删、查询、修改、排序等操作。 3、输出的实现:根据选择的操作,输出与之对应的信息。 综上可以绘制出职工管理功能的系统流程图,如图 1 所示 总控模块 输入模块 系统处理 模块 输出模块 测试模块 图 1 系统流程图 4、系统功能结构 根据职工管理系统问题的分析和设计要求, 可以得到该职工管理系统可以分 为七个模块:职工信息添加模块、职工信息修改模块、职工信息删除模块、职工 信息查询模块、职工信息排序模块、职工信息保存模块、职工信息显示模块。 三、详细设计三、详细设计 (1)根据详细设计要求,
6、可以得到主函数代码及其对应的程序流程图:在主 函数中,实现了友好的界面设计。系统需要输入职工的基本信息:姓名、性别、 出生年月、工作年月、学历、职务、住址、电话等。这个系统还利用键盘输入提 供的主菜单服务,在主菜单中,有九种操作,以下是结构体及其定义: char nameM; /姓名 char sexM; /性别 char birthdayM; /生日 char workdayM; /工作日 - 4 - char educationM; /教育程度 char positionM; /职位 char addressM; /地址 char numberM; /电话 void Creat(WI *); /当没有导入文件时,用此函数来创建 void Insert(WI *); /插入函数,将新增的数据插入到链表的尾端 void Delete(WI *); /删除函数,按照姓名来进行指定的删除 void sear