数据结构简单的职工管理系统

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
图2系统功能结构图
2.3
根据系统功能结构图的描述,可以构造出该系统的抽象数据类型和相对应的函数,其方法名和功能如表1所示。
表1函数功能表
模块
函数或数据结构
功能
链表数据类型
typedef struct Node
定义链表结点
typedef struct Datatype
定义职工信息
ListInitiate(SLNode *head)
typedef struct{
long int born_time,work_time,tele_num;
char name[ALLMAX],sex,degree[ALLMAX],job[ALLMAX],address[ALLMAX];
}DataType;
(3)初始化链表(ListInitiate(SLNode **head))
(3)输出的实现:根据选择的操作,输出与之对应的信息。
综上可以绘制出职工管理功能的系统流程图,如图1所示
图1系统流程图
2.3.3
根据职工管理系统问题的分析和设计要求,可以得到该职工管理系统可以分为五个模块:职工信息添加模块、职工信息修改模块、职工信息删除模块、职工信息查询模块、职工信息排序模块。其系统功能结构如图2所示。
void ListInitiate(SLNode **head)//---------------------------------链表初始化
{
if((*head=(SLNode *)malloc(sizeof(SLNode)))==NULL) exit(1);//动态分配存储空间
2.2
由系统管理员依次输入现有职工和新增职工的以下信息:姓名(可以重复)、性别、出生年月、工作年月、学历、职务、地址、电话等信息,并且注意输入时姓名、学历、职务、地址为字符串形式,性别为字符,其余的为长整型数字。
系统管理员根据公司的人员流动情况,选择系统提供的各项功能进行操作,并输出相应的结果。
2.3
Listfind(SLNode head)
查询职工信息
Listpaixu(SLNode *head)
职工信息排序
输出模块
print(SLNode *head)
显示职工信息
第三章 详细设计分析
3.1 抽象数据类型定义
(1)定义表结点(typedef struct Node)
typedef struct Node{
第一章前言1
第二章系统功能总体设计分析2
2.1问题描述2
2.2详细要求2
2.3功能分析2
2.3.1具体要求2
2.3.2系统流程分析3
2.3.3系统功能结构3
2.3模块函数构造4
第三章详细设计分析5
3.1抽象数据类型定义5
3.2主函数设计5
3.3查找算法设计6
3.4排序算法设计7
第四章系统实现9
第五章课程设计总结11
第二章 系统功能总体设计分析
2
根据题目要求,由于职工信息是存放在文件中,所以应提供文件的输入、输出等操作;在程序中需要浏览职工的信息,应提供显示、查找、排序等操作;另外还应提供键盘式选择菜单实现功能选择
对功能要求的实现是解决管理系统的关键问题。一个管理系统能将其划分为插入、删除、查找、排序等功能。对不同的功能模块进行编写实现,然后通过一定的方式的进行连接调用,从而完成对各部分的操作。
初始化链表
系统处理模块
SLNode *ListInsert(SLNode *head,DataType x)
插入职工信息
ListDelete(SLNode *head)
删除职工信息
ListModify(SLNode *head)
修改职工信息
put(SLNode *head,FILE *fp)
保存职工信息
经过本次课程设计,我们对于数据结构基本理论和存储结构及算法设计将有更加深入的理解,并提高我们在实际设计操作中系统分析、结构确定、算法选择、数学建模和信息加工的能力,提高我们的C/C++语言程序设计能力,以及培养学我们编写程序设计文档的能力。
在经济繁荣中的今天对于职工管理有很大程度上的要求,一个工程能否较好较快的运行,与职工管理的好坏分不开关系,通过该系统,能够更好的管理职工,简化管理,使管理更方便,准确性和直观性更强。本着实践为目的,通过设计与制作进一步学习和掌握职工管理系统的原理和使用方法。虽然在一定程度上较为简单,但也能体现在出在人员管理上的方便快捷。
2.3.1
简单的职工管理系统主要实现以下功能:
①新增一名职工:将百度文库增职工对象按姓名以字典方式职工管理文件中。
② 删除一名职工:从职工管理文件中删除一名职工对象。
③ 查询:从职工管理文件中查询符合某些条件的职工。
④ 修改:检索某个职工对象,对其某些属性进行修改。
⑤ 排序:按某种需要对职工对象文件进行排序。
long int born_time,work_time,tele_num;
char sex,name[ALLMAX],degree[ALLMAX],job[ALLMAX],address[ALLMAX];
struct Node *next;
}SLNode;
(2)定义职工信息(typedef struct Datatype)
参考文献12
附录13
第一章 前言
随着电子信息的到来,能够在任何时候、任何地方、利用应用程序获得统计分析的相关信息,并享受应用软件带来的便捷。数据结构就是为着实现这样的目标而设立的核心问题解决方法。
《数据结构》是计算机专业一门重要的基础课程。本课程较系统地介绍了软件设计中常用的数据结构以及相应的存储结构和实现算法,介绍了常用的多种查找和排序技术。本课程将为整个专业的学习以及软件设计水平的提高打下良好的基础。为了学好《数据结构》,必须掌握编写一些在特定数据结构上的算法,并通过上机调试,更好地掌握各种数据结构及其特点,此次《数据结构》课程设计目的正在于此。
要求:职工信息包括姓名、性别、出生年月、工作年月、学历、职务、住址、电话等信息。
2.3.2
(1)输入功能的实现:要想实现职工管理系统的输入,必须要建立一个职工信息系统的抽象数据类型,其中职工信息以链表的存储方式实现。由键盘输入职工对象,以文件方式保存。程序执行时先将文件读入内存。
(2)系统处理功能的实现:系统管理员根据公司的人员流动情况,在提示信息的提示下,选择相应的服务进行操作。如对职工对象中的"姓名"按字典顺序进行排序;对排序后的职工对象进行增、删、查询、修改、排序等操作。
相关文档
最新文档