数据结构课程设计报告-企业员工管理系统报告_第1页
数据结构课程设计报告-企业员工管理系统报告_第2页
数据结构课程设计报告-企业员工管理系统报告_第3页
数据结构课程设计报告-企业员工管理系统报告_第4页
数据结构课程设计报告-企业员工管理系统报告_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、广东某某学院数据结构课程设计题 目: 企业员工管理系统 学 号: 姓 名: 年 级: 学 院: 专 业: 指导教师: 一、功能需求运用所学知识设计一个企业员工管理系统,对单位的员工进行管理,包括插入、删除、查找、排序等功能。员工对象包括姓名、性别、年龄、职位、工龄等信息。二、功能分析员工对象包括姓名、性别、年龄、职位、工龄等信息。(1)新增一名员工:将新增员工对象按姓名以字典方式员工管理文件中,基本信息中的编号是按照添加顺序自动增加的。(2)删除一名员工:从员工管理文件中删除一名员工对象,分为根据编号删除、根据姓名删除。(3)查询:从员工管理文件中查询符合某些条件(编号、姓名)的员工。(4)修

2、改:根据编号检索出对象,既可以对整个对象修改,也可对某个属性修改。(5)排序:按照年龄、工龄对所有的员工排序(降序),也可以回复排序以前的员工现实状态。基本思想数据结构链表:可以不需要初始化容量并且可以任意增减元素链式存储:插入及删除元素时方便输入员工信息添加员工信息流程图输出结果修改员工信息选择查看类型输入员工姓名或工号输入员工姓名或工号输入新信息浏览员工信息删除员工信息查询员工信息选择五、测试结果六、调试情况分析操作界面相对简洁,基本功能已实现七、心得体会这是一个特殊的学期,因为疫情在学习上的常态都被打乱了,在家度过了这个特殊的学期。在这个学期虽然在家也没有停止学习的步伐,但是比起在学校的

3、学习效率差了不少。经过了一个学期的学习,我对于数据结构有了一定的了解,也对于c/c+有了进一步认识。在线上的学习过程,我一开始对数据结构不太上心在一些基础知识的掌控上不是很到位,在做课程设计的任务当中比较常在一些基础知识的认识上犯错。不过因为在线上学习,所以在不懂的时候还可以通过看课堂视频的回放,查补自己的一些缺漏。因为长期在家学习,所以对于学习怠慢了不少。我在上一个学期对于c/c+掌握得不够透彻,又因为这个学期的怠慢,在这次课程设计过程中被指针绕晕过不少回,在一些函数类型的定义上也出过不少的错误。学习不进则退,在这次课程设计中我认识到了,多练习才可以更好的掌握这个课程的知识,它不是一个可以通

4、过死记硬背就可以掌握好的。通过这次课程设计,我认识到了我自身的不足,同时也对课本上的知识有了进一步的了解,在函数上的调用、程序结构设计等方面有了进一步的实践认知。也给我在今后的学习与实践之中提供不少提醒。通过实践,我检验所学的各项不足之处,也对于知识运用上有了新的认知。本次课程设计对于企业员工管理系统的功能分析及设计,实现了它一些基本上的功能操作。经过这次实践,我在遇到问题及解决问题上对于知识的掌握及运用有了一些进步。在课程设计的测试阶段,常有错误导致程序编译失败,有时候在网上也没有找出很好的解决方法,因为宅家学习,在一些问题交流上并不是很顺畅,通过反复的调试才找到较好的解决方案。在这次程序设

5、计实践中,增长了一定的编程经验。在这次实践中,清晰的认识到自己对于知识的各处不足,同时也加深对编程上的理解与认知。在学习的同时也加强了与同伴之间的交流与共同进步,在完成每一步的实际操作时都能从中得到收获,在一次次发现错误和改正的过程中,一步步加深对知识的理解与运用,又通过总结经验,提高自身的编写程序能力。5.在平常的课堂上虽然也有小范围的实验课,不过像如今课程设计这样统筹的编写一个程序,将平时相对零散的知识运用到一起有着不一样的体验,在进行实际的操作时才发现,要设计一个程序不是随便的几段代码就能完成的,在实践中,更容易总结到所学知识的不足和积累实践经验。在平时的理论学习中,没有经过一定实践检验

6、,很难将理论上上的知识升华到实际应用当中。理论到实践,在实验的期间,我学到了很多东西,同时也巩固了所学的知识。通过这次实验我再次感到理论与实践相结合的重要性,只有理论知识是远远不够的,只有把所学理论知识与实践相结合才能更好的掌握所学的知识。通过这次课程设计,我拓宽了知识面,锻炼了能力,综合素质得到较大提高。基本完成完成课程设计的目的,分析和解决问题的实际工作能力,以便培养成为能够主动适应社会主义现代化建设需要的高素质的复合型人才。作为整个学习体系的有机组成部分,课程设计虽然安排在一定时间内进行,但并不具有绝对独立的意义。它的一个重要功能,在于运用学习成果,检验学习成果。运用学习成果,把课堂上学

7、到的系统化的理论知识,尝试性地应用于实际设计工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践。这也是一次预演。通过课程设计,让我们找出自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的心理转型期。课程设计促进了我系人才培养计划的完善和课程设置的调整。近年来,我系为适应学生的实践需要陆续增设与调

8、整了一系列课程,受到同学的欢迎,其中这次的设计很受同学们的喜欢。课程设计达到了专业学习的预期目的。在一个星期的课程设计之后,我们普遍感到不仅实际动手能力有所提高,更重要的是通过对软件开发流程的了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。附录:#include #includeusing namespace std;struct Staff *p, *q, *t;int number = 1;struct Staffint num; /工号char name20; /姓名char sex4; /性别int age; /年龄char positio

9、n30; /职位int seniority; /工龄struct Staff *next=NULL;Staff *Add1(Staff *head) /添加char name20;int k = 0;system(cls);p = 0;q = 0;cout 当输入姓名为0时输入结束 endl;cout name;while (strcmp(name,0)k+;p = new Staff;p-num = number+;strcpy(p-name, name);cout p-sex;cout p-age;cout p-position;cout p-seniority;if (k = 1)hea

10、d = p;elseq-next = p;q = p;cout endl;cout name;t = head;FILE *fp;fp = fopen(./员工管理文件.txt, w);if (fp = 0)cout num, head-name, head-sex, head-age, head-position, head-seniority);head = head-next;cout next;char name20;int k = 0;system(cls);p = 0;q = 0;cout 当输入姓名为0时输入结束 endl;cout name;while (strcmp(name

11、, 0)k+;p = new Staff;p-num = number+;strcpy(p-name, name);cout p-sex;cout p-age;cout p-position;cout p-seniority;if (k = 1)head = p;elseq-next = p;q = p;cout endl;cout name;FILE *fp;fp = fopen(./员工管理文件.txt, a);if (fp = 0)cout num, head-name, head-sex, head-age, head-position, head-seniority);head =

12、head-next;cout 已添加;Sleep(1000);fclose(fp);system(cls);void Query(Staff *head) /查询if (head = NULL)cout endl endl 请先添加信息;Sleep(2000);system(cls);return;int t;cout 1:工号查询 2:姓名查询 endl endl t;system(cls);if (t = 1)int num;cout num;cout num)cout 工号: num endl;cout 姓名: name endl;cout 性别: sex endl;cout 年龄: a

13、ge endl;cout 职位: position endl;cout 工龄: seniority endl next;system(pause);system(cls);else if (t = 2)char name20;cout name;while (head != 0)if (strcmp(name, head-name) = 0)cout 工号: num endl;cout 姓名: name endl;cout 性别: sex endl;cout 年龄: age endl;cout 职位: position endl;cout 工龄: seniority endl;cout nex

14、t;system(pause);system(cls);elsecout 请输入选择正确选项;Sleep(2000);system(cls);Query(head);Staff *Delete(Staff *head) /删除system(cls);if (head = NULL)cout endl endl 请先添加信息;Sleep(1000);system(cls);return head;q = head;p = NULL;int num;int t;cout 1:按工号删除 2:按姓名删除 endl endl t;system(cls);if (t = 1)cout endl endl

15、 endl num;while (num != q-num)p = q;q = q-next;if (head = q) /删除的工号在第一个head = head-next;else if (q-next = 0) /删除的工号在最后一个p-next = 0;elsep-next = q-next; /删除的工号在中间cout endl 删除成功 endl;else if (t = 2)char name20;cout endl endl endl name;while (strcmp(name, q-name) != 0)p = q;q = q-next;if (head = q) /删除

16、的工号在第一个head = head-next;else if (q-next = 0) /删除的工号在最后一个p-next = 0;elsep-next = q-next; /删除的工号在中间cout endl 删除成功 endl;elsecout 请输入选择正确选项;Sleep(1000);Delete(head);system(cls);q = head;FILE *fp;if (head != 0)fp = fopen(./员工管理文件.txt, w);if (fp = 0)cout num, head-name, head-sex, head-age, head-position,

17、head-seniority);head = head-next;fclose(fp);elsefp = fopen(./员工管理文件.txt, w);fclose(fp);Sleep(1000);system(pause);system(cls);return q;void Modify(Staff *head)/修改if (head = NULL)cout endl endl 请先添加信息;Sleep(2000);system(cls);int t, num, age, seniority;char name20, sex4, position30;system(cls);cout end

18、l endl endl num;while (head-num != num)head = head-next;cout 工号: num endl;cout 姓名: name endl;cout 性别: sex endl;cout 年龄: age endl;cout 职位: position endl;cout 工龄: seniority endl;cout endl endl 请选择要需要修改的内容:;cout endl endl 1.名字 2.性别 3.年龄 4.职位 5.工龄 endl;cout t;system(cls);switch (t)case 1:cout 请输入新名字:; b

19、reak;case 2:cout 请输入新性别:; break;case 3:cout 请输入新年龄:; break;case 4:cout 请输入新职位:; break;case 5:cout name; strcpy(head-name, name); break;case 2:cin sex; strcpy(head-name, sex); break;case 3:cin age; head-age = age; break;case 4:cin position; strcpy(head-position, position); break;case 5:cin seniority;

20、 head-seniority=seniority; break;FILE *fp;fp = fopen(./员工管理文件.txt, w);if (fp = 0)cout num, head-name, head-sex, head-age, head-position, head-seniority);head = head-next;fclose(fp);cout endl 修改成功;Sleep(1000);system(cls);void Browse(Staff *head)if (head = NULL)cout endl endl 请先添加信息;Sleep(1000);system

21、(cls);return;q = head;int t, num, age, seniority;char name20, sex4, position30;cout endl;cout 1:按工号排序 2:按年龄排序 3:按工龄排序 endl endl t;system(cls);if (t = 1)for (; head != 0; head = head-next)p = head-next;for (; p != 0; p = p-next)if (head-num p-num)num = head-num;strcpy(name, head-name);strcpy(sex, hea

22、d-sex);age = head-age;strcpy(position, head-position);seniority=head-seniority;head-num = p-num;strcpy(head-name, p-name);strcpy(head-sex, p-sex);head-age = p-age;strcpy(head-position, p-position);head-seniority=p-seniority;p-num = num;strcpy(p-name, name);strcpy(p-sex, sex);p-age = age;strcpy(p-pos

23、ition, position);p-seniority= seniority;head = q;printf(%st%st%st%st%st%sn, 工号, 姓名, 性别, 年龄, 职位, 工龄);while (head != 0)printf(%dt%st%st%dt%st%dn, head-num, head-name, head-sex, head-age, head-position, head-seniority);head = head-next;else if (t = 2)for (; head != 0; head = head-next) p = head-next;fo

24、r (; p != 0; p = p-next)if (head-age age)num = head-num;strcpy(name, head-name);strcpy(sex, head-sex);age = head-age;strcpy(position, head-position);seniority = head-seniority;head-num = p-num;strcpy(head-name, p-name);strcpy(head-sex, p-sex);head-age = p-age;strcpy(head-position, p-position);head-s

25、eniority = p-seniority;p-num = num;strcpy(p-name, name);strcpy(p-sex, sex);p-age = age;strcpy(p-position, position);p-seniority = seniority;head = q;printf(%st%st%st%st%st%sn, 工号, 姓名, 性别, 年龄, 职位, 工龄);while (head != 0)printf(%dt%st%st%dt%st%dn, head-num, head-name, head-sex, head-age, head-position,

26、head-seniority);head = head-next;else if (t = 3)for (; head != 0; head = head-next) p = head-next;for (; p != 0; p = p-next)if (head-seniority seniority)num = head-num;strcpy(name, head-name);strcpy(sex, head-sex);age = head-age;strcpy(position, head-position);seniority = head-seniority;head-num = p

27、-num;strcpy(head-name, p-name);strcpy(head-sex, p-sex);head-age = p-age;strcpy(head-position, p-position);head-seniority = p-seniority;p-num = num;strcpy(p-name, name);strcpy(p-sex, sex);p-age = age;strcpy(p-position, position);p-seniority = seniority;head = q;printf(%st%st%st%st%st%sn, 工号, 姓名, 性别, 年龄, 职位, 工龄);while (head != 0)printf(%dt%st%st%dt%st%dn, head-num, head-name, head-sex, he

温馨提示

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

评论

0/150

提交评论