c++高校人事管理系统设计报告书Word格式文档下载.docx
- 文档编号:19472791
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:28
- 大小:147.14KB
c++高校人事管理系统设计报告书Word格式文档下载.docx
《c++高校人事管理系统设计报告书Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《c++高校人事管理系统设计报告书Word格式文档下载.docx(28页珍藏版)》请在冰豆网上搜索。
要求:
本次课程设计利用《软件设计基础-C++》课程中所学到的编程知识和编程技巧,完成具有一定难度和工作量的程序设计题目,帮助学生掌握编程、调试的基本技能,独立完成所布置的任务。
1、对系统进行功能需求分析
2、设计合理的数据结构和系统框架
3、编程简练,程序功能齐全,能正确运行
4、说明书、流程图要清楚
5、课题完成后必须按要求提交课程设计报告
任务:
将自己选择题目的任务要求简单填写在此处。
要求用C++的思想来完成程序的设计。
在基本要求达到后,进行创新设计,强化程序功能、美化界面。
3.课程设计说明书
概要设计
主要写模块说明,模块结构图,系统流程图(例N-S流程图)(五号,宋体)
模块说明:
在我设计的程序中一共包括了六个模块,分别是:
新增模块、查找模块、修改模块、完全打印模块、删除模块、退出系统模块。
这六个模块中新增、查找和修改都是独立分开作为子函数的,另外三个则是作为switch语句中的一部分,通过switch语句,把六大模块联系了起来,同时,为了实现多次使用这六大模块,就在switch语句外加了while循环。
模块结构图:
详细设计
总体流程图
:
各功能模块流程图:
4.课程设计成果
程序源代码,运行结果(可用屏幕抓图的方法说明)(五号,宋体)(多页)
//C++编写高校人事管理系统
#include<
iostream>
fstream>
cstring>
iomanip>
usingnamespacestd;
//#######################################################################################
//人员信息类
classperson
{
private:
charnum[10];
//编号
chartype[20];
//人员类型
charname[20];
//姓名
charsex[10];
//性别
charage[10];
//年龄
charzhiwu[20];
//职务
charzhicheng[20];
//职称
charzzmm[20];
//政治面貌
charzgxl[20];
//最高学历
charrzsj[20];
//任职时间
charlysj[30];
//来院时间
staticintbianhao;
//计数器
public:
voidsetperson(char*tyoe1,char*name1,char*sex1,char*age1,char*zhiwu1,char*zhicheng1,char*zzmm1,char*zgxl1,char*rzsj1,char*lysj1);
staticint&
getbianhao(){returnbianhao;
};
char*gettype(){returntype;
char*getname(){returnname;
char*getsex(){returnsex;
char*getage(){returnage;
char*getzhiwu(){returnzhiwu;
char*getzhicheng(){returnzhicheng;
char*getzzmm(){returnzzmm;
char*getzgxl(){returnzgxl;
char*getrzsj(){returnrzsj;
char*getlysj(){returnlysj;
char*getnum(){returnnum;
voidtjry();
voidfind();
voidoutput();
voidshanchu();
voidxiugai();
voidtongji();
personp[100];
personpp[100];
intk;
intk1;
intperson:
:
bianhao=0;
voidperson:
setperson(char*type1,char*name1,char*sex1,char*age1,char*zhiwu1,char*zhicheng1,char*zzmm1,char*zgxl1,char*rzsj1,char*lysj1)
intstaticj=1;
strcpy(type,type1);
strcpy(name,name1);
strcpy(sex,sex1);
strcpy(age,age1);
strcpy(zhiwu,zhiwu1);
strcpy(zhicheng,zhicheng1);
strcpy(zzmm,zzmm1);
strcpy(zgxl,zgxl1);
strcpy(rzsj,rzsj1);
strcpy(lysj,lysj1);
bianhao++;
ofstreamfile("
添加人员.txt"
ios_base:
app);
file<
<
p[j].getbianhao()<
endl;
p[j].gettype()<
p[j].getname()<
p[j].getsex()<
p[j].getage()<
p[j].getzhiwu()<
p[j].getzhicheng()<
p[j].getzzmm()<
p[j].getzgxl()<
p[j].getrzsj()<
p[j].getlysj()<
j++;
file.close();
}
tongji()//统计人员信息
inta=0,b=0,c=0,d=0,k=1;
ifstreamfilem("
in);
while(!
filem.eof())
{
filem>
>
pp[k].getnum();
pp[k].gettype();
pp[k].getname();
pp[k].getsex();
pp[k].getage();
pp[k].getzhiwu();
pp[k].getzhicheng();
pp[k].getzzmm();
pp[k].getzgxl();
pp[k].getrzsj();
pp[k].getlysj();
if(strcmp(pp[k].gettype(),"
行政人员"
)==0||strcmp(pp[k].gettype(),"
教师"
一般员工"
)==0)
a++;
if(strcmp(pp[k].getzzmm(),"
党员"
b++;
if(strcmp(pp[k].getsex(),"
女"
c++;
if(strcmp(pp[k].getzgxl(),"
博士"
d++;
k++;
}
filem.close();
cout<
setw(8)<
"
在职人数"
setw(12)<
党员人数"
女工人数"
高学历人数"
a<
b<
c<
d<
xiugai()//修改人员信息
intk=1;
{filem>
请输入要修改的人的编号:
intx,y;
cin>
x;
请输入编号为"
x<
的人需要修改的项目的代号:
1:
编号-2:
人员类型-3:
姓名-4:
性别-5:
年龄-6:
职务-7:
职称-8:
政治面貌-9:
最高学历-10:
任职时间-11:
来院时间"
y;
switch(y)
case1:
{cout<
请输入新的编号:
;
pp[x].getnum();
}break;
case2:
请输入新的人员类型:
pp[x].gettype();
case3:
请输入新的姓名:
cin>
pp[x].getname();
case4:
请输入新的性别:
pp[x].getsex();
case5:
请输入新的年龄:
pp[x].getage();
case6:
请输入新的职务:
pp[x].getzhiwu();
case7:
请输入新的职称:
pp[x].getzhicheng();
case8:
请输入新的政治面貌:
pp[x].getzzmm();
case9:
请输入新的最高学历:
pp[x].getzgxl();
case10:
请输入新的任职时间:
pp[x].getrzsj();
case11:
请输入新的来院时间:
pp[x].getlysj();
ofstreamfile1("
trunc);
for(k=1;
k<
=bianhao;
k++)
{file1<
pp[k].getnum()<
file1<
pp[k].gettype()<
pp[k].getname()<
pp[k].getsex()<
pp[k].getage()<
pp[k].getzhiwu()<
pp[k].getzhicheng()<
pp[k].getzzmm()<
pp[k].getzgxl()<
pp[k].getrzsj()<
pp[k].getlysj()<
file1.close();
修改并保存完毕"
shanchu()//删除人员信息
intz;
请输入要被删除的人员信息编号:
z;
while(z<
1||z>
bianhao)
cout<
没有找到你要删除的人,请重新输入:
ofstreamfile2("
if(z==k)break;
file2<
for(k=z+1;
pp[k-1].getnum()<
file2.close();
删除记录完毕"
find()//查询人员信息
按编号查询——2:
按姓名查询——请选择(1-2)"
intm;
m;
while(m<
1||m>
2)
请重新输入(1-2)"
switch(m)
{
charn[10];
cout<
请输入要查找的编号:
cin>
n;
ifstreamfilem("
intk=1;
while(!
filem>
if(strcmp(pp[k].getnum(),n)==0)
{
cout<
setw(4)<
编号"
setw(9)<
人员类型"
姓 名"
setw(5)<
性别"
年龄"
职务"
职称"
政治面貌"
setw(10)<
最高学历"
任职时间"
cout<
setw
(9)<
(5)<
pp[k].getzhicheng()
pp
[k].getrzsj()<
break;
k++;
if(filem.eof())
{cout<
\n 警告:
没有要查找的人!
!
}filem.close();
}
break;
charnname[20];
请输入要查找的姓名:
nname;
{
if(strcmp(pp[k].getname(),nname)==0)
{
cou
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 高校 人事管理系统 设计 报告书
