员工管理系统

上传人:痛*** 文档编号:192131574 上传时间:2023-03-06 格式:PDF 页数:19 大小:1,016.68KB
收藏 版权申诉 举报 下载
员工管理系统_第1页
第1页 / 共19页
员工管理系统_第2页
第2页 / 共19页
员工管理系统_第3页
第3页 / 共19页
资源描述:

《员工管理系统》由会员分享,可在线阅读,更多相关《员工管理系统(19页珍藏版)》请在装配图网上搜索。

1、 员工管理系统(总 17 页)本页仅作为文档封面,使用时可以删除 This document is for reference only-rar21year.March 课程设计(论文)任务书 信息学院 学 院 16 通信卓越 专 业 1 班 一、课程设计(论文)题目 员工管理系统 二、课程设计(论文)工作自 2 2017 年 06 月 19 日起至 2017 年 06 月 25 日 三、课程设计(论文)地点:信息机房 205 四、课程设计(论文)内容要求:1本课程设计的目的(1)熟练掌握 C 语言的基本知识和技能;(2)掌握线性表的链式存储结构;(3)掌握线性链表的创建算法;(4)熟悉掌握多

2、线性链表的增加、删除算法;(5)培养分析、解决问题的能力;提高学生的科技论文写作能力。2课程设计的任务及要求 每个员工的信息包括:编号、姓名、性别、出生年月、学历、职务、电话、住址等。系统能够完成员工信息的查询、更新、插入、删除、排序等功能。1)基本要求:(1)排序:按不同关键字,对所有员工的信息进行排序。(2)查询:按特定条件查找员工。(3)更新:按编号对某个员工的某项信息进行修改。(4)插入:加入新员工的信息。(5)删除:按编号删除已离职的员工的信息。2)创新要求:提高算法效率,降低时间复杂度和空间复杂度 3)课程设计论文编写要求(1)要按照课程设计模板的规格书写课程设计论文(2)论文包括

3、目录、正文、心得体会、参考文献等(3)课程设计论文用 A4 纸统一打印,装订按学校的统一要求完成 4)答辩与评分标准:(1)完成原理分析:20 分;(2)完成设计过程:40 分;(3)完成调试:20 分;(4)回答问题:20 分。5)参考文献:(1)严蔚敏,吴伟民.数据结构.北京:清华大学出版社,2012.(2)严蔚敏、吴伟民、米宁.数据结构题集.北京:清华大学出版社,2009.(3)谭浩强.C 程序设计(第 4 版)北京:清华大学出版社,2013.(4)何钦铭、冯雁、陈越.数据结构课程设计.杭州:浙江大学出版社,2013 6)课程设计进度安排 内容 天数 地点 构思及收集资料 2 图书馆 编

4、程设计与调试 5 实验室 撰写论文 3 图书馆、实验室 学生签名:2017 年 06 月 19 日 课程设计(论文)评审意见(1)完成原理分析(20 分):优()、良()、中()、一般()、差();(2)设计分析 (20 分):优()、良()、中()、一般()、差();(3)完成调试 (20 分):优()、良()、中()、一般()、差();(4)翻译能力 (20 分):优()、良()、中()、一般()、差();(5)回答问题 (20 分):优()、良()、中()、一般()、差();(6)格式规范性及考勤是否降等级:是()、否()评阅人:职称:副教授 2017 年 06 月 25 日目 录 一、

5、问题描述.4 二、内容简介.5 基本要求:.错误!未定义书签。.算法思想:.错误!未定义书签。.模块划分:.6.数据结构:.7.源程序:.7.测试情况:.34 三、小结.38 四、参考文献.39 一、问题描述(描述要求编程解决的问题)本次课程设计所制作的员工管理系统,选择用 C+语言、利用链表、函数等知识对员工的信息、数据进行收集管理,具有手工管理所无法比拟的优点,例如:检索迅速、查找方便、可靠性高、存储量大、成本低、充足的信息、快捷的查询手段等优点。这些优点能够极大地提高员工管理的效率,也是企业的科学化、正规化管理和与世界接轨的重要条件。本次课程设计的是一个基于员工数据信息的数据管理系统,通

6、过这个员工管理系统,对员工的数据信息进行管理,企业的管理员就可以按照菜单选择相应的操作,快捷高效地对员工信息执行查询、更新、插入、删除、排序等基本功能。本次课程设计建立的一个“员工管理系统”,如图 1 所示,该员工管理系统需要我们利用编程知识解决以下几点问题:(1)该员工管理系统可以编写存放一定量的员工基本信息,存放的员工的人数应该在 100 人以内,每个员工的信息应该包括:员工编号、员工姓名、员工性别、员工出生年月、员工学历、员工职务、员工电话、员工家庭住址、员工的工资等。(2)该员工管理系统在保证能满足录入职工号不出现重复的情况下,录入的职工号信息可以按照要求以文件形式保存。(3)该员工管

7、理系统是建立职工信息管理的文件的情况下,并且可以实现对其按照不同关键字,如出生年月、员工的编号、员工的工资、员工的电话号码等对所有员工的信息进行从大到小的排序。(4)该员工管理系统还应该可以按照特定条件查找员工、按编号对某个员工的某项信息进行修改、加入新员工的信息、按编号删除已经离职的员工的信息,在满足这些基本功能的情况下,本程序尽可能地对其进行简化算法并提高算法效率,降低时间复杂度和空间复杂度。图 1:员工管理系统系统功能结构图二、内容简介 基本要求:(给出程序要达到的具体的要求。)该员工管理系统能够管理员工的编号、姓名、性别、出生年月、学历、职务、电话号码、住址、工资等这些基本信息,除此之

8、外,系统还可以实现员工信息的查询、更新、插入、删除、排序等功能,该功能的具体要求如下所示。(1)排序:按不同关键字,如出生年月排序、员工工资排序、电话号码排序、员工编码这些关键字对所有员工的信息进行排序。(2)查询:从员工管理文件中查询符合某些条件的员工,可以通过关键字查询的信息有:员工部门查询、出生年月查询、员工学历查询、员工职务查询、员工住址查询、电话号码查询、员工编码查询、员工性别查询。(3)修改:先按编号检索某个需要修改信息的员工对象,对其某些属性进行修改,这些属性包括:员工的编号、姓名、性别、出生年月、学历、职务、电话号码、住址、工资等。(4)插入:新增一名员工,将新增员工信息加入员

9、工管理文件当中。(5)删除:按编号删除已离职的员工的信息。.算法思想:(描述解决相应问题算法的设计思想。)(1)排序算法 在排序算法中,员工管理系统提供了四种排序操作,实现了系统的基本排序操作。这些排序操作分别为:对员工出生年月进行排序,对员工电话号码进行排序,对员工工资进行排序,对员工编号进行排序。在排序算法中,利用链表的指针的移动遍历整个职工信息表,利用 if 语句判断链表上两两之间排序数据的大小,再从大到小的排序。(2)删除算法 在删除算法中,创新点事将删除算法拆分为查找要删除职工信息所在的节点位置为一个算法,删除节点为另一个算法,这样做不仅使算法更为简单清晰,还将一个函数可以被删除函数

10、、修改函数两个函数调用,提高了算法的效率。(3)链式存储算法 因为员工的编码是不可重复的,所以锁定信息时,只需要从职工的编码确定职工的节点,节省了算法的时间复杂度和空间复杂度。(4)查询算法:在查询算法中,职工管理系统提供了其中多种查询操作,实现了系统的人性化查询操作,这些操作分别为:对姓名进行查询、对性别进行查询、对出生年月进行查询、对工作年月进行查询、对学历进行查询、对职位进行查询、对住址进行查询、对电话进行查询等一系列操作。在查找算法中,利用链表的指针的移动扫描整个员工信息表,利用 if语句判断字符串是否匹配,将匹配的员工信息全部输出,如图 2 所示。图 2:查询算法程序流程(5)排序算

11、法 在排序算法中,员工管理系统提供了四种查询操作,实现了系统的基本排序操作,这些排序操作分别为:对姓名进行排序,对性别进行排序,对出生年月进行排序,对工作年月进行排序。排序算法中,利用链表的指针的移动扫描整个员工信息表,将需要比较的两个数据拆分成一个算法,其余数据为另一个算法,利用 if 语句判断同一链表相邻数据的大小,并在链表中从头结点开始,从大到小排列,如图3所示。图 3:排序算法程序流程.模块划分:(描述所设计程序的各个模块(即函数)功能。)根据员工管理系统问题的分析和设计需求,可以得到该员工管理系统可以分为五个模块分别为菜单选择模块、信息输入模块、信息游览模块、信息修改模块、信息删除模

12、块。其系统功能结构如下图所示(1)菜单选择:用于完成接受管理人员的命令,是职工信息管理的入口,用户所进行的各种操作均需要在此模块中进行选择,并且进而调用其他模块,从而实现相应的功能。(2)信息输入模块:完成职工信息的输入功能,输入职工的信息,包括姓名、出生年月、职工号、性别、职务、工资、地址、电话、工资等。(3)信息游览模块:完成一件录入的员工信息的查询,查询方式有按编号查询、按姓名查按学历查询、按员工职务查询、按员工部门进行查询、按出生年月进行查询、按员工住址进行查询、按员工电话号码、按员工性别进行查询等八种查询方式。(4)信息修改模块:查询要修改员工数据所对应的节点,完成员工信息的修改功能

13、。(5)信息删除模块:查询要删除员工数据所对应的节点,完成对员工信息的删除功能。.数据结构:(给出所使用的基本抽象数据类型,所定义的具体问题的数据类型,以及新定义的抽象数据类型。)根据系统功能结构图的描述,可以构造出该系统的抽象数据类型和相对应的函数,其方法名和功能如下表 1 所示 模块 函数或数据结构 功能 链表数据类型 Typedef struct node 定义链表节点 struct Employee 定义职工信息 Link Create(Link Head)初始化链表 系统处理模块 Link Add(Link Head)插入职工信息 Link Del(Link Head)删除职工信息

14、Link Modify(Link Head)修改职工信息 Void Save_ByFile(Link Head,fstream&ofile)保存职工信息 bool Search(Link Head)Link Search_Unique_Front(Link Head)查询职工信息 Link Sort(Link Head)职工信息排序 输出模块 void Display_List(Link Head)显示职工信息 表 1:系统功能结构表.源程序:(给出所有源程序清单,要求程序有充分的注释语句,至少要注释每个函数参数的含义和函数返回值的含义。)/*员工管理系统*/*头文件*/#include#in

15、clude 工部门查询 2.出生年月查询 3.员工学历查询 4.员工职务查询*endl;cout *5.员工住址查询 6.电话号码查询 7.员工编码查询 8.员工性别查询*endl;cout *endl;cout 请选择相应操作菜单项:endl;while(1)cout i;if(i=1)生年月排序 2.员工工资排序 3.电话号码排序 4.员工编码排序*endl;cout *endl;cout 请选择相应操作菜单项:endl;cout i;while(ptr)ptr_N=ptr-Next;ptr_F=Head;册职工 2.修改信息 3.删除信息 4.信息查询*endl;cout *5.保存文件

16、 6.信息排序 7.信息显示 0.退出系统*endl;cout *endl;cout 请选择相应操作菜单项:menu;while()cout 请选择正确的菜单选项。menu;switch(menu)case 0:cout 你已成功退出员工管理系统,谢谢使用!endl;return 0;case 1:Head=Add(Head);测试情况:(设计测试数据,或具体给出测试数据。要求测试数据能全面地测试所设计程序的功能。最后给出程序的测试情况,并分析运行结果。)进入员工管理系统,首先看到的是欢迎界面,然后提示:请输入要录入的职工数,输入完数字后,就提示:按照次序依次输入职工的姓名、性别、出生年月、工

17、作年月、学历、职务、电话的信息,输完信息后自动回到主界面,根据提示输入相应的数字。如 0,退出简单职工管理系统。如 1,提示依次输入职工信息,录入完毕自动返回主界面。如 2,提示输入修改职工姓名,然后进行依次修改职工所以信息。如 3,提示输入删除的姓名,成功正确返回,错误有提示无此员工信息。如 4,会提示查询方式:0.退出查询系统,回到主菜单 1.对姓名进行查询2.对出生年月进行查询 3.对学历进行查询 4.对工作年月进行查询,输入相应编号进行查询。如 6,提示:0.退出排序系统,回到主菜单 1.对出生年月进行排序 2.对员工工资进行排序 3.对员工号码进行排序 4.对员工编码进行排序,输入号

18、码进行查询。(1)进入职工管理页面,如图4 所示。图 4:主菜单选择界面 (2)退出职工管理系统,如图5 所示。图 5:退出简单职工管理系统界面(3)新 增 职 工 信 息 查 询 全 部 职 工 信 息,如 图6、7所 示。图 6:新增职工信息并查询全部职工信息界面 (4)查询全部职工信息,如图 7 所示 图 7:新增并查询职工信息界面 (5)删除职工信息如图 8 所示 图 8:删除职工信息界面 (6)对职工姓名进行查询并显示,如:9 所示 图 9:职工信息查询界面(7)修改职工信息,如:图 10 所示 图 10:职工信息修改界面 (8)按编号排序职工信息并显示,如图 11 所示。图 11:

19、按工资排序职工信息并显示 三、小结本次课程设计是围绕员工信息管理系统进行。根据问题描述可知,需要解决的问题并不复杂,整个问题只需要实现一个职工管理系统功能,那就是在这个系统中实现对职工信息的插入、删除、查询、排序、修改以及保存等。但是,为了实现该功能,却需要优秀的算法和数据结构以保障实现的时间和空间效率,把职工信息存储在一个单链表中,利用指针实现对职工信息的各项基本操作。此次课程设计,遇到了不少困难和学到的知识点,如下:(1)有很多陌生的头文件。(2)员工不同的信息要采取不同的存储方式,如电话号码必须要用到长整型,员工姓名要用到字符串型。(3)字符型定义的数据输入数字时,会造成乱码现象。(4)

20、删除算法中只能删除最后输入的员工,(删除前几个算法时,后面的数据会被丢失)。同时,本次课程设计,也用到了一些创新点,如下。(1)提供了多种按照性别,年龄等多种查找方式,大大增加了查找的可能性,且考虑全面,当名单中无此信息时,也能返回主菜单,不影响系统程序的继续进行,每次查找后都会返回主菜单继续操作,给员工管理系统的人员带来了方便。(2)尝试使用 setw 函数来控制输出间隔,更加的美观规范。(3)在删除算法和查询算法中,创新点是将删除算法拆分为查找要删除职工信息所在的节点位置为一个算法,删除节点为另一个算法,这样做不仅使算法更为简单清晰,还将一个函数可以被删除函数、修改函数两个函数调用,提高了算法的效率 四、参考文献 1 严蔚敏,吴伟民.数据结构.北京:清华大学出版社,2007.2 严蔚敏、吴伟民、米宁.数据结构题集.北京:清华大学出版社,2007.3 谭浩强.C 程序设计(第 4 版)北京:清华大学出版社,2010.4 何钦铭、冯雁、陈越.数据结构课程设计.杭州:浙江大学出版社,2007.

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!