c.trans();
return0;
}
4.程序截图:
(三)、职工信息表设计。
使用继承的方法,编写最多能输入10个职工的信息表,再根据这个表产生一个职工信息简表,并利用多态性实现信息的输出。
设计要求实现如下功能:
1.建立职工信息数据,包括职工编号、姓名,性别和年龄。
2.根据职工信息表,建立只含姓名和年龄的职工信息简表。
3.使用继承的方法构造2个类,使用相应的对象数组放置10个职工信息。
4.编写同名display()成员函数,用来输出数组的内容。
5.编写函数printer(),用来根据实际对象输出它们的内容。
1.流程图
:
2.程序优缺点:
优点:
使用windows命名规则程序规范,可读性强,代码精炼,时间复杂度低,空间复杂度低
缺点:
功能较弱,操作性低。
3.代码段:
#include
#include
#include
usingnamespacestd;
classEmployee_one
{
public:
Employee_one(intn,char*nam,chars,inta):
num(n),name(nam),sex(s),age(a){}
virtualvoiddisplay();
intgetnum()
{
returnnum;
}
char*getname()
{
returnname;
}
chargetsex()
{
returnsex;
}
intgetage()
{
returnage;
}
private:
intnum;
char*name;
charsex;
intage;
};
classEmployee_two:
publicEmployee_one
{
public:
Employee_two(intn,char*nam,chars,inta,intw):
Employee_one(n,nam,s,a),wages(w){}
voiddisplay();
intgetwages()
{
returnwages;
}
private:
intwages;
};
voidEmployee_one:
:
display()
{
cout<"<<:
right)
<<"age:
"<<:
left)<<"sex:
"<<:
left)<<"num:
"<}
voidEmployee_two:
:
display()
{
cout<<"name:
"<"<"<}
voidprinter(Employee_twow2[])
{
inta=0,i=0;
cout<<"请输入编号:
";
cin>>a;
if(a<=10)
{for(i=0;i<10;i++)
{
if(w2[i].getnum()==a)
{
cout<<"name:
"<"<"
<"<"<}
}
}
else
{
cout<<"编号错误差无此人";
}
}
intmain()
{
Employee_onew1[10]=
{
Employee_one(1,"ci",'m',18),Employee_one(2,"cai",'m',19),
Employee_one(3,"xi",'f',18),Employee_one(4,"su",'m',20),
Employee_one(5,"li",'m',20),Employee_one(6,"yan",'m',19),
Employee_one(7,"yi",'m',18),Employee_one(8,"xiu",'m',21),
Employee_one(9,"su",'m',17),Employee_one(10,"men",'m',22)
};
Employee_twow2[10]=
{
Employee_two(1,"ci",'m',18,800),Employee_two(2,"cai",'m',19,700),
Employee_two(3,"xi",'f',18,900),Employee_two(4,"su",'m',20,750),
Employee_two(5,"li",'m',20,860),Employee_two(6,"yan",'m',19,900),
Employee_two(7,"yi",'m',18,1000),Employee_two(8,"xiu",'m',21,680),
Employee_two(9,"su",'m',17,1500),Employee_two(10,"men",'m',22,700)
};
cout<<"职工信息数据显示如下:
";
for(inti=0;i<10;i++)
{
Employee_one*p=w1+i;
p->display();
cout<<'\n';
}
cout<<"\n";
cout<<"职工信息简表如下:
\n";
for(intj=0;j<10;j++)
{
Employee_two*p=w2+j;
p->display();
cout<<"\n";
}
cout<<"实际对象信息为:
\n";
printer(w2);
cout<<"\n";
return0;
}
4.程序截图:
(四).高校人事管理系统:
1、问题描述(功能要求):
某高校,主要人员有:
在职人员(行政人员、教师、双肩挑人员(注:
教师编制,担任领导职务))、退休人员、返聘人员和临时工。
现在,需要存储这些人员的人事档案信息:
编号、姓名、性别、年龄、职务、职称、政治面貌、最高学历、任职时间、来校时间。
要求:
1)添加删除功能:
能根据学校人事的变动情况,添加删除记录;
2)查询功能:
能根据编号和姓名进行查询;
3)编辑功能(高级):
根据查询对相应的记录进行修改,并存储;
4)统计功能:
能根据多种参数进行人员的统计(在职人数、党员人数、女工人数、高学历高职称人数);
5)保存功能:
能对输入的数据进行相应的存储,要求重载插入和提取符以完成数据的保存和打开。
6)人员