c++课程设计之高校教职工人事管理系统Word文档格式.docx
- 文档编号:20556711
- 上传时间:2023-01-24
- 格式:DOCX
- 页数:22
- 大小:242.25KB
c++课程设计之高校教职工人事管理系统Word文档格式.docx
《c++课程设计之高校教职工人事管理系统Word文档格式.docx》由会员分享,可在线阅读,更多相关《c++课程设计之高校教职工人事管理系统Word文档格式.docx(22页珍藏版)》请在冰豆网上搜索。
);
、职称("
初级"
中级"
高级"
、政治面貌("
群众"
中共党员"
民主党派"
)、学历("
中专"
大专"
大学"
硕士"
博士"
)。
(2)实现下面的功能
a、设计菜单实现功能选择;
b、输入功能:
输入员工的信息,并保存到文件中;
c、删除资料:
能够根据编号删除员工的资料;
d、修改功能:
能够根据编号来修改员工的资料;
e、查询功能:
能够根据编号来查看员工的资料;
f、统计功能:
能够统计在职人员、中共党员、女教职工、高职称、高学历的人数。
g、错误提示功能:
如果输入的资料不合法,将会提示错误,并给予指导。
2、详细设计
类Person
charno[100];
//编号
charduty[30];
//职工分类
charsex[10];
//性别
intage;
//年龄
charposition[30];
//职务
charzhicheng[30];
//职称
charpolitical[30];
//政治面貌
charrecord[30];
//学历
voidadd();
//增加信息
voiddelet();
//删除信息
voidchange();
//修改信息
voidfind();
//查找信息
voidpush(Personpp);
//给类赋值
下面程序流程图中的判断框必须用菱形表示,请修改
(1)Person:
:
add()
(2)Person:
delete()
(3)Person:
change()
(4).Person:
find()
3、程序清单
/*
改程序需要在D盘加入文本名为“subject.txt”文本档案作为资料的库存。
文本档案资料内容如下:
09408201行政人员男35处级高级中共党员大学
09408202教师女30处级高级中共党员大学
09408203临时工女20无高级群众中专
09408204临时工男22处级初级中共党员博士
09408205返聘人员男30科级高级中共党员大专
09408206教师女40科级初级中共党员硕士
09408207退休人员女68处级中级民主党派大学
09408208一般员工男27地级高级群众大学
09408209教师男22处级高级中共党员博士
09408210退休人员男62地级初级民主党派硕士
09408211返聘人员女40无中级中共党员硕士
09408212一般员工男38处级中级群众大学
09408213教师男46处级无中共党员博士
09408214教师男27无高级民主党派大学
09408215教师男18处级高级中共党员大学
*/
//下面程序开始
#include<
iostream>
cstring>
usingnamespacestd;
constintN=1000;
intt=0;
inton=0;
//统计在职人员人数
intdang=0;
//统计中共党员人数
intnv=0;
//统计女性职工人数
intgaozhi=0;
//统计高职称人数
intgaoli=0;
//统计高学历人数
classPerson
{public:
charsex[10];
charduty[30];
charpolitical[30];
charzhicheng[30];
charno[100];
//给列成员赋值
};
Personp[N];
voidPerson:
push(Personpp)
{
strcpy(no,pp.no);
strcpy(sex,pp.sex);
strcpy(position,pp.position);
strcpy(zhicheng,pp.zhicheng);
strcpy(political,pp.political);
strcpy(record,pp.record);
strcpy(duty,pp.duty);
age=pp.age;
if(strcmp(duty,"
))on++;
if(strcmp(sex,"
女"
)==0)nv++;
if(strcmp(zhicheng,"
)==0)gaozhi++;
if(strcmp(political,"
)==0)dang++;
if(strcmp(record,"
)==0||strcmp(record,"
)==0)gaoli++;
}
voidtip()
{cout<
<
"
输入ENTER返回子菜单!
endl;
getchar();
system("
cls"
voidtip1()
输入ENTER返回主菜单!
voidLoad()//通过文本输入数据
{PersonS;
FILE*fp1;
boolf=1;
fp1=fopen("
d:
\\subject.txt"
r"
if(fp1==NULL)f=0;
while(f&
&
!
feof(fp1))
{fscanf(fp1,"
%s%s%s%d%s%s%s%s"
S.no,S.duty,S.sex,&
S.age,S.position,S.zhicheng,S.political,S.record);
p[t++].push(S);
}
fclose(fp1);
add()//录入信息
cout<
现在录入编号为"
no<
的档案:
A1:
cout<
输入员工的职工分类:
"
;
cin>
>
duty;
if(strcmp(duty,"
)&
strcmp(duty,"
strcmp(duty,"
))
{cout<
--(请输入正确的职工分类,例如:
行政人员,教师,一般员工,退休人员,返聘人员,临时工)"
gotoA1;
A2:
输入员工的性别:
sex;
男"
strcmp(sex,"
--(请输入正确的性别,例如:
男,女)"
gotoA2;
A3:
输入员工的年龄:
age;
if(age<
=0){cout<
--(请输入正确的年龄,例如:
18等)"
gotoA3;
A4:
输入员工的职务:
position;
if(strcmp(position,"
strcmp(position,"
strcmp(position,"
--(请输入正确的职务,例如:
无,科级,处级,地级)"
gotoA4;
A5:
输入员工的职称:
zhicheng;
strcmp(zhicheng,"
strcmp(zhicheng,"
--(请输入正确的职称,例如:
无,初级,中级,高级)"
gotoA5;
A6:
输入员工的政治面貌:
political;
if(strcmp(political,"
strcmp(political,"
strcmp(political,"
--(请输入正确的政治面貌,例如:
群众,中共党员,民主党派)"
gotoA6;
A7:
输入与员工的学历:
record;
if(strcmp(record,"
strcmp(record,"
strcmp(record,"
)
&
--(请输入正确的学历,例如:
中专,大专,大学,硕士,博士)"
gotoA7;
编号为"
的档案录入结束"
endl<
t++;
tip1();
delet()//删除信息
{
no[0]='
-'
))on--;
)==0)nv--;
)==0)gaozhi--;
)==0)dang--;
)==0)gaoli--;
删除员工信息成功!
change()//修改信息
{intn,flag=1;
do{
A:
***子菜单:
修改资料***"
endl
<
修改哪些信息?
1(编号)2(职工分类)3(性别)4(年龄)5(职务)6(职称)7(政治面貌)8(学历)9(退回主菜单)"
输入数字1-9进行修改或退出:
n;
if(n<
1||n>
9){cout<
sorry,您输入的信息有误,请重新输入!
gotoA;
switch(n)
{case1:
输入正确的员工编号:
no;
员工编号修改成功"
tip();
break;
case2:
B1:
输入正确的员工的职工分类:
strcmp(duty,"
{cout<
(请输入正确的职工分类,例如:
gotoB1;
if(strcmp(duty,"
cout<
员工职工分类修改成功"
tip();
case3:
B2:
输入正确的员工的性别:
if(strcmp(sex,"
(请输入正确的性别,例如:
gotoB2;
if(strcmp(sex,"
员工性别修改成功"
case4:
B3:
输入正确的员工的年龄:
=0)
(请输入正确的年龄,例如:
gotoB3;
员工年龄修改成功"
case5:
B4:
输入正确的员工的职务:
strcmp(position,"
{cout<
(请输入正确的职务,例如:
gotoB4;
员工职务修改成功"
case6:
B5:
输入正确的员工的职称:
if(strcmp(zhicheng,"
(请输入正确的职称,例如:
gotoB5;
员工职称修改成功"
case7:
B6:
输入正确的员工的政治面貌:
(请输入正确的政治面貌,例如:
gotoB6;
if(strcmp(political,"
员工政治面貌修改成功"
case8:
B7:
输入正确的员工的学历:
strcmp(record,"
&
(请输入正确的学历,例如:
gotoB7;
if(strcmp(record,"
员工学历修改成功"
case9:
flag=0;
}while(flag);
find()//查找信息(输出信息)
员工的编号:
员工的职工分类:
duty<
员工的性别:
sex<
员工的年龄:
age<
员工的职务:
position<
员工的职称:
zhicheng<
员工的政治面貌:
political<
员工的学历:
record<
intmain()
Load();
intn,i,flag1=1;
charnum[100];
do
{A:
***************"
主菜单"
(1)增加资料
(2)删除资料(3)修改资料(4)查找资料(5)查看统计"
(6)退出"
请选择1-6进行操作:
sorry,您输入的信息有误."
tip1();
C:
输入要增加的员工的编号:
num;
for(i=0;
i<
t;
i++)if(strcmp(p[i].no,num)==0)break;
if(i!
=t)
Sorry,您要增加的员工编号已存在,请重新输入!
gotoC;
strcpy(p[t].no,num);
p[t].add();
输入要删除的员工的编号:
i++)
{if(strcmp(p[i].no,num)==0)
{p[i].delet();
if(i==t){cout<
sorry,您输入的员工编号有误。
输入要修改的员工的编号:
{if(strcmp(p[i].no,num)==0)
{p[i].change();
输入要查看的员工的编号:
{if(strcmp(p[i].no,num)==0)
{p[i].find();
if(i==t){cout<
在职人员人数为:
on<
中共党员人数为:
dang<
女教职工人数为:
nv<
高职称人数为:
gaozhi<
搞学历人数为:
gaoli<
(说明:
1.在职人员不包括退休人员。
2.高学历包括硕士及博士。
)"
ca
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 课程设计 高校 教职工 人事管理系统
![提示](https://static.bdocx.com/images/bang_tan.gif)