高校人事管理系统c样本.docx
- 文档编号:25129021
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:61
- 大小:205.52KB
高校人事管理系统c样本.docx
《高校人事管理系统c样本.docx》由会员分享,可在线阅读,更多相关《高校人事管理系统c样本.docx(61页珍藏版)》请在冰豆网上搜索。
高校人事管理系统c样本
面向对象设计办法C++
课程设计
高校人事管理系统
11计算机科与技术2班
信息工程学院计算机科学与技术系
5月日
面向对象设计办法C++课程设计任务分派
院(系):
信息工程学院教研室:
软件教研室
课程设计题目
高校人事管理系统
课程设计目
(1)规定学生达到纯熟掌握C++语言基本知识和技能;
(2)基本掌握面向对象程序设计基本思路和办法;
(3)可以运用所学基本知识和技能,解决简朴面向对象程序设计问题。
(4)训练用系统观点和软件开发普通规范进行软件开发,并在此过程中培养严谨科学态度和良好工作作风。
初步掌握软件开发过程问题分析、系统设计、程序编码、测试等基本办法和技能。
(5)纯熟掌握C++中类及类模板在程序中应用,并纯熟理解类中函数调用。
小构成员及任务分派
姓名
学号
承担任务
与否组长
第一章需求分析
高校人事管理,高校在有职人员(行政人员、教师、普通员工)、退休人员、返聘人员和暂时工。
当前,需要存储这些人员人事档案信息:
编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来院时间。
规定:
1)添加删除功能:
能依照学院人事变动状况,添加删除记录;
2)查询功能:
能依照编号和姓名进行查询;
3)编辑功能(高档):
依照查询对相应记录进行修改,并存储;
4)记录功能:
能依照各种参数进行人员记录(在职人数、党员人数、女工人数、高学历高职称人数);
5)保存功能:
能对输入数据进行相应存储,规定重载插入和提取符以完毕数据保存和打开。
6)人员编号在生成人员信息时同步生成,每输入一种人员信息编号顺序加1。
第二章总体设计
2.1系统功能模块
2.2类之间关系
定义了8个类,分别为人员类(personnel类),暂时工类(casuallaborer类),进入时间类(cometime类),在职人员类(incumbency类),退休时间类(retiretime类),退休人员类(retiree类),返聘时间类(retime类),返聘人员类(returnee类)等。
同步又定义一种school类,在里面实现数据添加、删除、修改、查找、显示和退出。
第三章各功能模块实现
3.1模块实现及代码
删除功能:
#include"1.h"
school:
:
dele()
{
externintI,J,K,Z;
inti;
intnumber;
inta;
system("cls");
A:
cout<<"★★★★★★★★★welcome★★★★★★★★★★"< cout<<"\t*【1】按编号删除*"< cout<<"\t*【0】返回*\n"; cout<<"〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓从0-1中选取功能项: "; cin>>a; switch(a) { case1: cout<<"请输入要删除编号: "; cin>>number; for(i=0;i if(incumb[i].getnumber2()-number==0) { cout< for(i;i incumb[i]=incumb[i+1]; J--; } for(i=0;i if(reti[i].getnumber3()-number==0) { cout< for(i;i reti[i]=reti[i+1]; K--; } for(i=0;i if(retur[i].getnumber4()-number==0) { cout< "< for(i;i retur[i]=retur[i+1]; Z--; }gotoA; case0: break; } } 添加功能: #include"1.h" school: : add() { inta; externintI,J,K,Z; A: cout<<"★★★★★★★★★welcome★★★★★★★★★★"< cout<<"\t*【1】添加暂时工信息*"< cout<<"\t*【2】添加在职工工信息*"< cout<<"\t*【3】添加退休人员信息*"< cout<<"\t*【4】添加人员信息*"< cout<<"\t*【0】返回*\n"; cout<<"〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓从0-4中选取功能项: "; B: cin>>a; switch(a) { case1: { casuall[I].setcasuallaborer(); I++; }gotoB; case2: { incumb[J].setincumbency(); J++; } gotoB; case3: { reti[K].setretiree(); K++; } gotoB; case4: { retur[Z].setreturnee(); Z++; } gotoB; case0: break; default: cout<<"选取有误,请重新选取! ";gotoA; } } 记录功能: #include"1.h" school: : tongji() { externintI,J,K,Z; inta; inti=0; system("cls"); A: intj=0; cout<<"★★★★★★★★★welcome★★★★★★★★★★"< cout<<"\t*【1】在职人员数记录*"< cout<<"\t*【2】党员人数记录*"< cout<<"\t*【3】女工人数记录*"< cout<<"\t*【4】博士生人数记录*"< cout<<"\t*【0】返回*"< cout<<"〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓从0-4中选取功能项: "; cin>>a; switch(a) { case1: for(i=0;i incumb[i].incumbencyprint(); for(i=0;i retur[i].returneeprint(); j=J+Z; cout<<"在职人数为: "< case2: for(i=0;i if(strcmp(incumb[i].getparty2(),"党员")==0) { incumb[i].incumbencyprint(); j++; } for(i=0;i if(strcmp(reti[i].getparty2(),"党员")==0) { reti[i].retireeprint(); j++; } for(i=0;i if(strcmp(retur[i].getparty2(),"党员")==0) { retur[i].retimeprint(); j++; } cout<<"党员人数为: "< case3: for(i=0;i if(strcmp(casuall[i].getsex(),"女")==0) { casuall[i].casuallaborerprint(); j++; } for(i=0;i if(strcmp(incumb[i].getsex(),"女")==0) { incumb[i].incumbencyprint(); j++; } for(i=0;i if(strcmp(reti[i].getsex(),"女")==0) { reti[i].retireeprint(); j++; } for(i=0;i if(strcmp(retur[i].getsex(),"女")==0) { retur[i].retimeprint(); j++; } cout<<"女员人数为: "< case4: for(i=0;i if(strcmp(incumb[i].getstudy2(),"博士生")==0) { incumb[i].incumbencyprint(); j++; } for(i=0;i if(strcmp(reti[i].getstudy3(),"博士生")==0) { reti[i].retireeprint(); j++; } for(i=0;i if(strcmp(retur[i].getstudy4(),"博士生")==0) { retur[i].retimeprint(); j++; } cout<<"博士生人数为: "< default: cout<<"选取有误,请重新选取: ";gotoA; case0: break; } } 编辑功能: #include"1.h" school: : push() { externintI,J,K,Z; inte; B: system("cls"); cout<<"★★★★★★★★★welcome★★★★★★★★★★"< cout<<"\t*【1】录入暂时工信息*"< cout<<"\t*【2】录入在职工工信息*"< cout<<"\t*【3】录入退休人员信息*"< cout<<"\t*【4】录入返聘人员信息*"< cout<<"\t*【0】返回*\n"; cout<<"〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓从0-4中选取功能项: "; A: cin>>e; switch(e) { case1: { casuall[I].setcasuallaborer(); I++; }gotoB; case2: { incumb[J].setincumbency(); J++; } gotoB; case3: { reti[K].setretiree(); K++; } gotoB; case4: { retur[Z].setreturnee(); Z++; } gotoB; case0: break; default: cout<<"选取有误,请重新选取! ";gotoA; } } 查询功能: #include"1.h" voidchose() {cout<<"★★★★★★★★★welcome★★★★★★★★★★"< cout<<"\t*【1】姓名查找*"< cout<<"\t*【2】编号查找*"< cout<<"\t*【0】返回*\n"; cout<<"〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓从0-2中选取功能项: "; } school: : find() { inta; inti; externintI,J,K,Z; charname[20]; intnumber; E: intj=0; system("cls"); cout<<"★★★★★★★★★welcome★★★★★★★★★★"< cout<<"\t*【1】模糊查找*"< cout<<"\t*【2】在职工工中查找*"< cout<<"\t*【3】退休人员中查找*"< cout<<"\t*【4】返聘人员中查找*"< cout<<"\t*【0】返回*\n"; cout<<"〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓从0-4中选取功能项: "; cin>>a; switch(a) { case1: chose(); A: cin>>a; switch(a) { case1: cout<<"请输入要查找人姓名: "; cin>>name; for(i=0;i if(strcmp(casuall[i].getname(),name)==0) { j++; incumb[i].incumbencyprint(); } for(i=0;i if(strcmp(incumb[i].getname2(),name)==0) { j++; incumb[i].incumbencyprint(); } for(i=0;i if(strcmp(reti[i].getname3(),name)==0) { j++; reti[i].retireeprint(); } for(i=0;i if(strcmp(retur[i].getname4(),name)==0) { j++; retur[i].returneeprint(); } if(j==0) cout<<"没有找到该人: "< gotoA; case2: cout<<"请输入要查找人编号: "; cin>>number; for(i=0;i if(incumb[i].getnumber2()-number==0) {j++; incumb[i].incumbencyprint(); } for(i=0;i if(reti[i].getnumber3()-number==0) { j++; reti[i].retireeprint(); } for(i=0;i if(retur[i].getnumber4()-number==0) { j++; retur[i].returneeprint(); } if(j==0) cout<<"没有此编号人"; gotoA; case0: gotoE; } case2: chose(); B: cin>>a; switch(a) { case1: cout<<"请输入要查找人姓名: "; cin>>name; for(i=0;i if(strcmp(incumb[i].getname2(),name)==0) { j++; incumb[i].incumbencyprint(); } if(j==0) cout<<"没有找到该人: "< gotoB; case2: cout<<"请输入要查找人编号: "; cin>>number; for(i=0;i if(incumb[i].getnumber2()-number==0) { j++; incumb[i].incumbencyprint(); } if(j==0) cout<<"没有此编号人"; gotoB; default: cout<<"输入有误,请重新输入: ";gotoB; case0: gotoE; } case3: chose(); C: cin>>a; switch(a) { case1: cout<<"请输入要查找人姓名: "; cin>>name; for(i=0;i if(strcmp(reti[i].getname3(),name)==0) { j++; reti[i].retireeprint(); } if(j==0) cout<<"没有找到该人: "< gotoC; case2: cout<<"请输入要查找人编号: "; cin>>number; for(i=0;i if(reti[i].getnumber3()-number==0) { j++; reti[i].retireeprint(); } if(j==0) cout<<"没有此编号人"; gotoC; default: cout<<"输入有误,请重新输入: ";gotoC; case0: gotoE; } case4: chose(); D: cin>>a; switch(a) { case1: cout<<"请输入要查找人姓名: "; cin>>name; for(i=0;i if(strcmp(retur[i].getname4(),name)==0) { j++; retur[i].returneeprint(); } if(j==0) cout<<"没有找到该人: "< gotoD; case2: cout<<"请输入要查找人编号: "; cin>>number; for(i=0;i if(retur[i].getnumber4()-number==0) { j++; retur[i].returneeprint(); } if(j==0) cout<<"没有此编号人"; gotoD; default: cout<<"输入有误,请重新输入: ";gotoD; case0: gotoE; } case0: break; default: cout<<"输入有误,请重新输入: ";gotoE; } } 3.2运营成果 开始菜单界面: 添加人员信息界面: 记录人员信息界面: 人员信息查找界面: 人员信息删除界面: 人员修改界面: 第四章系统调试 系统调试: 1.在建立全局变量时,无法正常使用,后添加extern才实现功能使用。 通过对程序调试,发现诸多问题只有通过调试后来才干被找到和发现,才干更好美化和优化,是程序看起来更完美,让使用者更放心 第五章总结与体会 通过本次课程设计,让我对C++这门学科对有了进一步结识,纯熟掌握了类及类模板应用。 此前对该课程恐惊感都以消失,任何事情没有做不到只有愿不乐意去做。 刚开始接到该题,心中的确布满困惑。 但是在图书馆和网上找了某些资料看了后,便觉得思路就在眼前了,之前但是就是由于对该课程恐惊而产生了一定心里影响而已。 之后凭借那闪当前眼前点点思路,慢慢在揣摩,终于想出了大体程序内容。 然后一种一种函数思考,一步一步编写,调试,做起来也就越来越顺手了。 通过我重复思考,程序中错误得到顺利解决。 函数功能也得到了进一步完善。 并且在本次课程设计过程中,让我进一步结识到了团队力量,只有团结才干发挥出一种集体力量。 一种人力量真好有限,虽然个人能力再强,做一种大点项目,也会力不从心。 只有分工协作才干将事办得越快越好。 通过这次课程设计,会为咱们后来进入社会提供一定经验。 咱们相信在此后学习真咱们会更加努力,积累经验。 使自己在编程等各方面得到提高。 课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力重要环节,是对学生实际工作能力详细训练和考察过程.随着科学技术发展日新日异,当今计算机应用在生活中可以说得是无处不在。 因而作为21世纪大学来说掌握计算机开发技术是十分重要。 回顾起本次课程设计,至今我仍感触颇多,确,自从拿到题目到完毕整个编程,从理论到实践,在整整一种星期日子里,可以学到诸多诸多东西,同步不但可以巩固了此前所学过知识,并且学到了诸多在课本上所没有学到过知识。 通过这次课程设计使我懂得了理论与实际相结合是很重要,只有理论知识是远远不够,只有把所学理论知识与实践相结合起来,从理论中得出结论,才干真正为社会服务,从而提高自己实际动手能力和独立思考能力。 在设计过程中遇到问题,这毕竟独立做,难免会遇到过各种各样问题,同步在设计过程中发现了自己局限性之处,对此前所学过知识理解得不够深刻,掌握得不够牢固。 同步,对给过我协助所有同窗和各位指引教师再次表达忠心感谢! 。 通过这次课程设计使我懂得了理论与实际相结合是很重要,只有理论知识是远远不够,只有把所学理论知识与实践相结合起来,从理论中得出结论,才干真正为社会服务,从而提高自己实际动手能力和独立思考能力。 编写过程也是咱们发现错误过程,毕竟咱们自己专业知识掌握不够,在设计中走了诸多弯路,刚开始是主线无从下手,不懂得要干嘛,如果平时课余时间多加强对这些专业知识学习,那么在这次课程设计中将会少走诸多弯路。 虽然程序完毕了,但我感觉里面也许尚有诸多不完善地方,通过这次动手设计吧我还是但愿自己后来办事时候要认真,仔细,考虑周全。 这段时间里,我又学到
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 高校 人事管理系统 样本