欢迎来到天天文库
浏览记录
ID:950800
大小:202.50 KB
页数:27页
时间:2017-10-06
《员工管理系统课程设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、洛阳理工学院课程设计说明书课程名称数据结构设计课题员工管理系统专业计算机科学与技术班级B110505学号B11050516姓名李满意完成日期课程设计任务书设计题目:员工管理系统_________________________________________________________设计内容与要求:设计一员工管理系统,可储存若干名员工的基本信息,并能对员工的信息进行一些基本的操作,其中应具有基本功能:(1)创建:创建员工信息库。(2)输出:可以输出所有已输入的员工的所有信息。(2)排序:按不同关键字,对所有员工的信息进行排序。(3)查询:按特定
2、条件查找员工。(4)更新:按编号对某个员工的某项信息进行修改。(5)插入:加入新员工的信息。(6)删除:按编号删除已离职的员工的信息。(8)退出:进行完所有需要的操作后可以退出该系统,完成操作。指导教师:张红霞年月日课程设计评语成绩:指导教师:张红霞年月日洛阳理工学院课程设计报告【问题描述】该员工管理系统应能实现一些简单的操作,其中每个员工的信息应包括:编号、姓名、性别、出生年月、学历、职务、电话、住址等。系统能够完成员工信息的查询、更新、插入、删除、排序等功能。【基本要求】(1)排序:按不同关键字,对所有员工的信息进行排序。(2)查询:按特定条件查
3、找员工。(3)更新:按编号对某个员工的某项信息进行修改。(4)插入:加入新员工的信息。(5)删除:按编号删除已离职的员工的信息。【测试数据】1.创建员工信息数据:b11050516李满意男1996.3.2本科学生18238816299p3.240b11050517钟金言男1995.2.4本科学生18238816303p3.240b11050518魏良雷男1998.5.6本科学生18238818310p3.2402.输出员工信息数据:2,23.对员工排序数据:3,24.查询员工信息数据:4,1,b110505165.更新员工信息数据:5,2,钟金言6.
4、插入新员工信息数据:6,b11050520郑亚振男1998.5.7本科学生18238816307p3.2407.删除离职员工信息数据:7,b11050518【算法思想】1、输出函数:输出部分为查看方便共用三种输出方式,分别将员工的编号、姓名、电话号码放在第一个位置输出,算法很简单,就是用一个for语句将所有员工信息输出。2、排序函数(排序部分按三种关键字使用了三种排序方法):(1)按编号快速排序:从待排序员工记录中选取第一个员工为枢轴,其编号设为K1,然后将其余员工编号小于K1的记录移到K1的记录的前面,而将编号大于K1的记录移到后面,结果将待排序员
5、工记录序列分成两个子表,最后将编号为K1的记录插到其分界线的位置处。这个过程称为一趟快速排序。通过一次划分后,就以编号为K1的记录为界,将待排序序列分成了两个子表,且前面子表中所有记录的编号均不大于K1,而后面子表中的所有记录的编号均不小于K1。对分割后的子表继续按上述原则进行分割,直到所有子表的表长不超过1为止,此时待排序记录序列就变成了一个有序表。(2)按姓名折半排序:从记录的第二个姓名开始折半插入,令low=1,high=i-1(25洛阳理工学院课程设计报告i为未排序时的第i个记录,也是当前需要折半插入排序的记录),并令mid=(low+hig
6、h)/2,然后比较第i个记录的姓名与第mid个记录的姓名,如果第i个记录的姓名小于第mid个记录的姓名则high=mid-1,否则low=mid+1,继续进行第i个记录的姓名与第mid个记录的姓名的比较直到low>high,如此便找到插入第i个记录的插入位置。如此逐个插入所有待排序的记录。(3)按电话号码堆排序:先建一个“大顶堆”,即先选得一个关键字为最大的记录,然后与序列中最后一个记录交换,之后继续对序列中前n-1记录进行“筛选”,重新将它调整为一个“大顶堆”再将堆顶记录和第n-1个记录交换,如此反复直至排序结束。所谓“筛选”指的是对一棵左/右子树
7、均为堆的完全二叉树,“调整”根结点使整个二叉树为堆。3、查询函数:此员工管理系统的查询可按照编号和姓名进行折半查询,在进行折半查询前,已进行按照所选关键字进行排序,首先将记录序列中间位置的记录的关键字与查找关键字比较,如果两者相等,则查询成功;否则利用中间位置记录将待排序序列分成前后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,并输出该记录,或直到子表不存在为止,此时查找不成功,输出非法查询。4、更新函数:更新函数与查询函数类似,可以根据需更新员工信息
8、的原编号或者原姓名进行折半查询到需更新的记录,在查询前已按照相应关键字进行排序,查找到该记录后即可对其更改,
此文档下载收益归作者所有