阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。 【说明】 设计一个评选优秀教师和学生的
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。
【说明】
设计一个评选优秀教师和学生的程序,其类结构如图6所示。当输入一系列教师或学生的记录后,将优秀学生及教师的姓名列出来。
【程序】
include<iostream.h>
include<stdio.h>
enum boolean {False,True}
class base
{
protected:
char name[8];
public:
void getname() {cout<<"姓名:" ;cin>>name; }
void printname() {cout<<"姓名:"<<name<<endU3
virtual boolean isgood() =0;
}
class student:(1)
{
int num;
public:
void getnum()
cout<<"考试成绩:" cin>>num;
boolean isgood() {return (2);{
};
class teacher:(3) public base
int num;
public:
void getnum()
cout<<"每年发表论文数:" ;cin>>num;
boolean isgood() {return (4);}
};
void main()
base* p[50];
student * pstud;
teacher * ptech;
char ch;
int count =0;
do
cout<<"输入教师(t)或学生(s):"
cin>>ch;
if(ch =="s")
{
pstud = new student;
pstud ->getname();
pstud ->getnum();
p[count ++ ] = pstud;
}
else if(ch == "t")
{
ptech = newteacher;
ptech - >getname( )
ptech ->getnum();
p[count++]=ptech;
}
else
cout<<"输入错误<<endl;
cout<<"继续输入码(Y/n)";
cin>>ch;
} while(ch == "y")
for(int i=0;i<count;i++)
{
if((5)) //若为优秀,则输出
p[i]->printname();
}
}
正确答案:(1)public base (2)(mum>90)? True:False(3)public base (4)(num>3)? True:False(5)p[i]->isgood()==True(1)public base (2)(mum>90)? True:False(3)public base (4)(num>3)? True:False(5)p[i]->isgood()==True 解析:基类base中提供的一个纯虚函数作为判断类student和类 teacher的公共接口
词条内容仅供参考,如果您需要解决具体问题
(尤其在法律、医学等领域),建议您咨询相关领域专业人士。
