高级语言程序设计任务书
一 设计题目
使用继承的方法,编写最多能输入10个职工的信息表,再根据这个表产生一个职工信息简表,并利用多态性实现信息的输出。
二 基本设计要求
设计要求实现如下功能:
1) 建立职工信息数据,包括职工编号、姓名、性别和年龄。
2) 根据职工信息表,建立只含有姓名和年龄的职工信息简表。
3) 使用继承的方法构造2个类,使用相应的对象数组放置10个职工信息。
4) 编写同名display()成员函数,用来输出数组的内容。
5) 另外编制一个函数printer(),用来根据实际对象输出它们的内容。
三 进一步的要求
设计菜单,简单界面为:
1. 增加职工记录
2. 生成信息简表
3. 显示原始记录
4. 显示简表记录
5. 结束程序运行
选择1-5:
我的程序如下,不知道错在哪里,大家帮改一下。谢谢了!
#include<iostream>
#include<string>
using namespace std;
class Emp1
{
public:
display_1()
{cout<<"name:"<<name<<endl;}
display_2()
{cout<<"age:"<<age<<endl<<endl;}
string name;
int age;
};
class Emp2:public Emp1
{
public:
void display()
{
cout<<"nun:"<<num<<endl;
display_1();
cout<<"sex:"<<sex<<endl;
display_2();
};
int num;
char sex;
}emp[2];
int main()
{int i,n,j,h;
cout<<"请依次输入10个职工的编号,姓名,性别, 年龄,"<<endl;
for(i=0;i<3;)
{
cout<<"请输入第"<<i+1<<"个职工的信息数据" <<endl;
cout<<"编号:";
cin>>emp[i].num;
cout<<"姓名:";
cin>>emp[i].name;
cout<<"性别:";
cin>>emp[i].sex;
cout<<"年龄:";
cin>>emp[i].age;
i++;
}
for(n=0;n<2;n++)
emp[n].display();
cout<<"1.增加职工记录"<<" 2.生成信息简表"<<" 3.显示原始记录"<<" 4.显示简表记录"<<" 5.结束程序运行"<<endl<<endl;
cout<<"请选择。。。"<<endl;
cin>>j;
if(j=2)
{
for(j=0;j<2;j++)
{emp[j].display_1();
emp[j].display_2();}
};
cin>>h;
if(h=3)
{
for(h=0;h<2;h++)
emp[h].display();
};
return 0;
}