收藏 分销(赏)

高校人事管理系统c.doc

上传人:精*** 文档编号:3381145 上传时间:2024-07-03 格式:DOC 页数:79 大小:249KB
下载 相关 举报
高校人事管理系统c.doc_第1页
第1页 / 共79页
高校人事管理系统c.doc_第2页
第2页 / 共79页
高校人事管理系统c.doc_第3页
第3页 / 共79页
高校人事管理系统c.doc_第4页
第4页 / 共79页
高校人事管理系统c.doc_第5页
第5页 / 共79页
点击查看更多>>
资源描述

1、面向对象设计方法C+ 课 程 设 计设计题目 高校人事管理系统成员姓名 专业班级 11计算机科与技术2班指导教师信息工程学 院 计算机科学与技术 系 2023年 5 月 日面向对象设计方法C+课程设计任务分派院(系):信息工程学院 教研室:软件教研室课程设计题目高校人事管理系统课 程 设 计目的(1)规定学生达成纯熟掌握C+语言的基本知识和技能; (2)基本掌握面向对象程序设计的基本思绪和方法; (3)可以运用所学的基本知识和技能,解决简朴的面向对象程序设计问题。 (4)训练用系统的观点和软件开发一般规范进行软件开发,并在此过程中培养严谨的科学态度和良好的工作作风。初步掌握软件开发过程的问题分

2、析、系统设计、程序编码、测试等基本方法和技能。(5)纯熟掌握C+中类及类模板在程序中的应用,并纯熟了解类中函数的调用。小组成员及任务分派姓名学号承担任务是否组长 目录第一章 需求分析1 第二章 总体设计22.1系统功能模块22.2类之间的关系 2第三章 各功能模块实现33.1模块实现及代码33.2运营结果15 第四章 系统调试 18第五章 总结与体会18参考文献20附录21第一章 需求分析高校人事管理,高校在有职人员(行政人员、教师、一般员工)、退休人员、返聘人员和临时工。现在,需要存储这些人员的人事档案信息:编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间。规定:

3、1) 添加删除功能:能根据学院人事的变动情况,添加删除记录;2) 查询功能:能根据编号和姓名进行查询;3) 编辑功能(高级):根据查询对相应的记录进行修改,并存储;4) 记录功能:能根据多种参数进行人员的记录(在职人数、党员人数、女工人数、高学历高职称人数);5) 保存功能:能对输入的数据进行相应的存储,规定重载插入和提取符以完毕数据的保存和打开。6) 人员编号在生成人员信息时同时生成,每输入一个人员信息编号顺序加1。第二章 总体设计2.1系统功能模块输出选择退出操作编辑功能记录功能删除功能查询功能添加功能按编号查找按姓名查找2.2类之间的关系 定义了8个类,分别为人员类(personnel类

4、),临时工类(casuallaborer类),进入时间类(cometime类),在职人员类(incumbency类),退休时间类(retiretime类),退休人员类(retiree类),返聘时间类(retime类),返聘人员类(returnee类)等。同时又定义一个school类,在里面实现数据的添加、删除、修改、查找、显示和退出。Public:setcasuallaborer();casuallaborerprint();Protected:int number;char party20;char study30;char pos20;Public: setincumbency();inc

5、umbencyprint();incumbency();Protected:int day;int year;int month:Public:setretiretime( );retiretimeprint( );Protected:int month;int year;int day;Public:setretime( );retimeprint( );Public:setreturnee();returneeprint();9=jhnPublic:retireeprint();setretiree();Protected:int month;int year;int day;Public

6、:cometime( );setcometime( );Protected:char name20;char sex10;int age;Public:setpersonnel( );personnelprint();人员类进入时间类临时工类退休时间类返聘时间类在职工工类 退休人员类返聘人员类第三章 各功能模块实现3.1 模块实现及代码删除功能:#include1.hschool:dele()extern int I,J,K,Z;int i;int number;int a;system(cls);A:coutwelcomeendl; coutt 【1】按编号删除 endl;coutt 【0】

7、返回 n ; couta; switch(a) case 1:coutnumber; for(i=0;iJ;i+) if(incumbi.getnumber2()-number=0) coutincumbi.incumbencyprint()被删除endl; for(i;iJ;i+) incumbi=incumbi+1; J-; for(i=0;iK;i+)if(retii.getnumber3()-number=0)coutretii.retireeprint()被删除endl;for(i;iK;i+)retii=retii+1;K-;for(i=0;iZ;i+)if(returi.getn

8、umber4()-number=0)coutreturi.returneeprint()被删除:endl;for(i;iZ;i+)returi=returi+1;Z-;goto A; case 0:break; 添加功能:#include1.hschool:add() int a; extern int I,J,K,Z;A:coutwelcomeendl; coutt 【1】添加临时工信息 endl; coutt 【2】添加在职工工信息 endl; coutt 【3】添加退休人员信息 endl;coutt 【4】添加人员的信息 endl;coutt 【0】返回 n ; couta;switch

9、(a)case 1: casuallI. setcasuallaborer(); I+; goto B;case 2:incumbJ.setincumbency();J+; goto B;case 3:retiK.setretiree();K+; goto B;case 4:returZ.setreturnee();Z+; goto B;case 0:break;default:cout选择有误,请重新选择!;goto A;记录功能:#include1.hschool:tongji()extern int I,J,K,Z;int a;int i=0;system(cls);A:int j=0;

10、 coutwelcomeendl; coutt 【1】在职人员数记录 endl; coutt 【2】党员人数记录 endl; coutt 【3】女工人数记录 endl; coutt 【4】博士生人数记录 endl; coutt 【0】返回 endl; couta; switch(a) case 1:for(i=0;iJ;i+) incumbi.incumbencyprint(); for(i=0;iZ;i+) returi.returneeprint(); j=J+Z; cout在职人数为:jendl;goto A; case 2:for(i=0;iJ;i+) if(strcmp(incumb

11、i.getparty2(),党员)=0) incumbi.incumbencyprint(); j+; for(i=0;iK;i+) if(strcmp(retii.getparty2(),党员)=0) retii.retireeprint(); j+; for(i=0;iZ;i+) if(strcmp(returi.getparty2(),党员)=0) returi.retimeprint(); j+; cout党员人数为:jendl;goto A; case 3:for(i=0;iI;i+) if(strcmp(casualli.getsex(),女)=0) casualli.casual

12、laborerprint(); j+; for(i=0;iJ;i+) if(strcmp(incumbi.getsex(),女)=0) incumbi.incumbencyprint(); j+; for(i=0;iK;i+) if(strcmp(retii.getsex(),女)=0) retii.retireeprint(); j+; for(i=0;iZ;i+) if(strcmp(returi.getsex(),女)=0) returi.retimeprint(); j+; cout女员人数为:jendl;goto A; case 4: for(i=0;iJ;i+) if(strcmp

13、(incumbi.getstudy2(),博士生)=0) incumbi.incumbencyprint(); j+; for(i=0;iK;i+) if(strcmp(retii.getstudy3(),博士生)=0) retii.retireeprint(); j+; for(i=0;iZ;i+) if(strcmp(returi.getstudy4(),博士生)=0) returi.retimeprint(); j+; cout博士生人数为:jendl;goto A; default:cout选择有误,请重新选择:;goto A; case 0:break; 编辑功能:#include1

14、.hschool:push() extern int I,J,K,Z;int e;B:system(cls);coutwelcomeendl; coutt 【1】录入临时工信息 endl; coutt 【2】录入在职工工信息 endl; coutt 【3】录入退休人员信息 endl;coutt 【4】录入返聘人员的信息 endl;coutt 【0】返回 n ; coute; switch(e) case 1: casuallI. setcasuallaborer(); I+; goto B;case 2:incumbJ.setincumbency();J+; goto B;case 3:ret

15、iK.setretiree();K+; goto B;case 4:returZ.setreturnee();Z+; goto B;case 0:break;default:cout选择有误,请重新选择!;goto A; 查询功能:#include1.hvoid chose() coutwelcomeendl; coutt 【1】姓名查找 endl; coutt 【2】编号查找 endl;coutt 【0】返回 n ; cout从0-2中选择功能项:;school:find() int a;int i;extern int I,J,K,Z;char name20;int number;E:in

16、t j=0;system(cls);coutwelcomeendl; coutt 【1】模糊查找 endl; coutt 【2】在职工工中查找 endl; coutt 【3】退休人员中查找 endl;coutt 【4】返聘人员中查找 endl;coutt 【0】返回 n ; couta; switch(a) case 1:chose();A:cina; switch(a) case 1:coutname; for(i=0;iI;i+) if(strcmp(casualli.getname(),name)=0) j+; incumbi.incumbencyprint(); for(i=0;iJ;

17、i+) if(strcmp(incumbi.getname2(),name)=0) j+; incumbi.incumbencyprint(); for(i=0;iK;i+)if(strcmp(retii.getname3(),name)=0)j+;retii.retireeprint();for(i=0;iZ;i+)if(strcmp(returi.getname4(),name)=0)j+;returi.returneeprint();if(j=0)cout没有找到该人:endl;goto A; case 2:coutnumber; for(i=0;iJ;i+) if(incumbi.ge

18、tnumber2()-number=0) j+; incumbi.incumbencyprint(); for(i=0;iK;i+)if(retii.getnumber3()-number=0)j+;retii.retireeprint();for(i=0;iZ;i+)if(returi.getnumber4()-number=0)j+;returi.returneeprint();if(j=0)couta; switch(a) case 1:coutname; for(i=0;iJ;i+) if(strcmp(incumbi.getname2(),name)=0) j+; incumbi.i

19、ncumbencyprint(); if(j=0) cout没有找到该人:endl; goto B; case 2:coutnumber; for(i=0;iJ;i+) if(incumbi.getnumber2()-number=0) j+; incumbi.incumbencyprint(); if(j=0) cout没有此编号的人; goto B; default:couta; switch(a) case 1:coutname; for(i=0;iK;i+)if(strcmp(retii.getname3(),name)=0)j+;retii.retireeprint();if(j=0

20、)cout没有找到该人:endl;goto C; case 2:coutnumber; for(i=0;iK;i+)if(retii.getnumber3()-number=0)j+;retii.retireeprint(); if(j=0)cout没有此编号的人;goto C; default:couta; switch(a) case 1:coutname; for(i=0;iZ;i+)if(strcmp(returi.getname4(),name)=0)j+;returi.returneeprint();if(j=0)cout没有找到该人:endl;goto D; case 2:cou

21、tnumber; for(i=0;iZ;i+)if(returi.getnumber4()-number=0)j+;returi.returneeprint();if(j=0)cout没有此编号的人;goto D; default:cout输入有误,请重新输入:;goto D; case 0:goto E; case 0:break; default:cout输入有误,请重新输入:;goto E; 3.2 运营结果开始菜单界面: 添加人员信息界面:记录人员信息界面:人员信息查找界面:人员信息删除界面:人员修改界面:第四章 系统调试系统调试:1. 在建立全局变量时,无法正常使用,后添加exter

22、n才实现功能的使用。通过对程序的调试,发现很多问题只有通过调试以后才干被找到和发现,才干更好的美化和优化,是程序看起来更完美,让使用者更放心第五章 总结与体会通过本次课程设计,让我对C+这门学科对有了进一步的结识,纯熟掌握了类及类模板的应用。以前对该课程的恐惊感都以消失,任何事情没有做不到只有愿不乐意去做。刚开始接到该题,心中的确充满困惑。但是在图书馆和网上找了一些资料看了后,便觉得思绪就在眼前了,之前但是就是由于对该课程的恐惊而产生了一定的心里影响而已。之后凭借那闪现在眼前的点点思绪,慢慢在琢磨,终于想出了大体的程序内容。然后一个一个函数的思考,一步一步的编写,调试,做起来也就越来越顺手了。

23、通过我的反复思考,程序中的错误得到顺利解决。函数功能也得到了进一步的完善。并且在本次课程设计的过程中,让我进一步结识到了团队的力量,只有团结才干发挥出一个集体的力量。一个人的力量真的好有限,即使个人能力再强,做一个大点的项目,也会力不从心。只有分工协作才干将事办得越快越好。通过这次课程设计,会为我们以后进入社会提供一定的经验。我们相信在此后的学习真的我们会更加努力,积累经验。使自己在编程等各方面得到提高。课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术发展的日新日异,当今计算机应用在生活中可以说得

24、是无处不在。因此作为二十一世纪的大学来说掌握计算机开发技术是十分重要的。回顾起本次课程设计,至今我仍感慨颇多,的确,自从拿到题目到完毕整个编程,从理论到实践,在整整一个星期的日子里,可以学到很多很多的的东西,同时不仅可以巩固了以前所学过的知识,并且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才干真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中碰到问题,这毕竟独立做的,难免会碰到过各种各样的问题,同时在设计的过程中发现了自己的局限性之处,对以

25、前所学过的知识理解得不够深刻,掌握得不够牢固。同时,对给过我帮助的所有同学和各位指导老师再次表达忠心的感谢!。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才干真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。编写的过程也是我们发现错误的过程,毕竟我们自己专业知识掌握的不够,在设计中走了很多弯路,刚开始是主线无从下手,不知道要干嘛,假如平时课余时间多加强对这些专业知识的学习,那么在这次课程设计中将会少走很多的弯路。虽然程序完毕了,但我感觉里面也许尚有很多不完善的地方,通过这次动手设计吧我还是希望

26、自己以后办事的时候要认真,仔细,考虑周全。这段时间里,我又学到了更多C+ 程序类知识,同时我也被提醒以后办事的时候要认真,仔细,考虑周全。参考文献1郑莉、傅仕星编,C+面向对象程序设计,清华大学出版社,2023年9月出版2谭浩强编,C+面向对象程序设计,清华大学出版社,2023年7月出版3李师贤等译,C+精髓,机械工业出版社,2023年8月出版4Davis Chapman,学用Visual c+ 6.0,清华大学出版社,2023年7月出版5郑莉、傅仕星编,C+语言面向对象程序设计习题与实验指导,清华大学出版社,2023年9月出版。附录源程序:/1.h#include#includeusing

27、namespace std;class personnel /人员类public:setpersonnel();personnelprint();/人员打印char *getname1()/获取名字return name;char *getsex()/获取性别return sex;protected:char name20;char sex10;int age;/class cometime/进入时间类public:cometime()year=0;setcometime();cometimeprint();/进入时间打印protected:int year;int month;int day

28、;/class retime/返聘时间类public:setretime();retimeprint();/返聘时间打印protected:int year;int month;int day;/class retiretime/退休时间类public:setretiretime();retiretimeprint();/退休时间打印protected:int year;int month;int day;/class casuallaborer:public personnel,public cometime/临时工类 public:setcasuallaborer();/临时工初始化 ca

29、suallaborerprint();/临时工信息打印 char *getname()/获取姓名 return name; char *getsex()/获取性别 return sex; ;/class incumbency:public personnel,public cometime /在职人员类public:setincumbency();/在职人员初始化incumbencyprint();/在职人员信息打印incumbency()number=0;setnumber(int number1)number=number1;char *getname2()/获取姓名return name

30、;int getnumber2()/获取编号return number;char *getparty2()/获取政治面貌return party;char *getstudy2()/获取最高学历return study;char *getpos2()/获取职务return pos;char *getsex()/获取性别return sex;protected: int number;/编号char party20;/政治面貌char study30; /最高学历char pos20;/职务;/class retiree:public incumbency,public retiretime/退休人员类public:retireeprint();/退休人员信息打印setretiree();/退休人员初始化int getnumber3()/获取编号return number;char *getname3()/获取姓名return name;char *getparty3()/获取政治面貌return party;char *getstudy3()/获取最高学历return study;char *getpos3()/获取职务return pos;char *getsex()return sex;/class returne

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服