首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++程序,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 本程序用于评选优秀教师和学生。当输入一系列教师或学生的记录后,将优秀学生及教师的姓名列出来。其类结构如下图所示: 【程序】 #include
阅读以下说明和C++程序,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 本程序用于评选优秀教师和学生。当输入一系列教师或学生的记录后,将优秀学生及教师的姓名列出来。其类结构如下图所示: 【程序】 #include
admin
2010-01-15
53
问题
阅读以下说明和C++程序,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
本程序用于评选优秀教师和学生。当输入一系列教师或学生的记录后,将优秀学生及教师的姓名列出来。其类结构如下图所示:
【程序】
#include <iostream.h>
#include <stdio. h>
class base
{
protected:
char name[8];
public:
void getname(){cout<<"name:"; cin>>name;}
void printname(){cout<<"name:"<<name<<endl;}
(1)
};
class student: (2)
{
int num;
public:
void getnum()
{cout<<"score:"; cin>>num;}
bool isgood()
{return (3) }
};
class teacher: (2)
{
int num;
public:
void getnum()
{cout<<"paper:"; cin>>num;}
bool isgood()
{return (num>3)?true:false;}
void main()
{
base *p[50];
student *pstud;
teacher *ptech;
char ch;
int count=0;
do{
cout<<"input teacher(t) or student(s):";
cin>>ch;
if(ch==’s’)
{
pstud=new student;
pstud->getname();
pstud->getnum();
p[count++]=pstud;
}
else if(ch==’t’)
{
(4)
ptech->getname();
ptech->getnum();
p[count++]=ptech;
}
else
cout<<"input is wrong"<<endl;
cout<<"continue to iput(y/n)?";
cin>>ch;
}while(ch==’y’);
for(int i=0;i<count;i++)
if((5))
p
->printname();
}
选项
答案
(1)virtual bool isgood()=0; (2)public base (3)(num>90)?true:false; (4)ptech=new teacher; (5)p[i]->isgood()==true
解析
本题考查C++中类的继承、虚函数和其他一些语法结构。
题目要求本题的程序用于评选优秀教师和学生,在输入一系列教师或学生的记录后,能将优秀学生及教师的姓名列出来。根据题目中的图,对于学生来说,只要拿其考试成绩与90比较大小就可;对于老师来说,只要一年内发表的论文超过3篇就可以。
下面我们来分析代码。代码给出了三个类的定义和一个主函数,类base是类student和类teacher的基类。
第(1)空处在基类base的定义里面,结合题目中的要求,我们知道类base中需要定义一个isgood()虚函数,但在类base的代码中并没有看到对虚函数isgood()的定义,因此,第(1)空应该是定义虚函数isgood()。在C++中定义虚函数的方法是在函数的定义前加一个关键字virtual,所以,此空应填virtual bool isgood()=0。
第(2)空处的作用很明显,是用在继承类的定义时,表明其对父类的继承方式,由继承类中继承父类的成员方法getname()仍然是公有的可以知道,子类对父类的继承方式是公有继承。所以,此空答案为public base。
第(3)空处的作用是在类student中重新定义虚函数isgood(),其要完成的任务在上面分析中已经知道,拿学生的考试成绩与90比大小,如果大于90返回true,否则返回 false。因此,此空答案为(num>90)?true:false。
在做第(4)空时,我们如果结合前面那个订语句下面的代码就很容易明白了,此空要完成的任务是动态创建一个teacher对象,因此,答案为ptech=new teacher。
第(5)空所在的位置是一个条件选择语句的条件,再结合全程序来看,不难发现此时程序还没有实现对优秀学生及教师的姓名的列出,而第(5)空下面的语句刚好用来列出姓名,那么第(5)空的功能是判断是否为优秀学生或老师,调用函数isgood()可以实现。因此,此空答案为p
->isgood()==true。
转载请注明原文地址:https://kaotiyun.com/show/jBjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
经过反复修改的文档已经定稿,需要送到其他电脑上打印。为防止不同电脑不同软件版本或他人误操作导致文档发生变化,最好将该文档以()格式保存并传送。
某软件公司规定,该公司软件产品的版本号由二至四个部分组成:主版本号次版本号[.内部版本号][.修订号]。对该公司同一软件的以下四个版本号中最新的版本号是(
将四个元素a,b,c,d分成非空的两组,不计组内顺序和组间顺序,共有()种分组方法。
()是一种保护数据的安全策略,该策略使用户只能感知自己将用到的信息,对于其他信息都加以屏蔽和保护,使信息泄露、数据完整性受到损害的可能性最小。
图文混排是Word的特色功能之一,下列叙述中,不正确的是(46)。
甲、乙两队同时开凿一条640米长的隧道。甲队从一端起,每天掘进7米;乙队从另一端起,每天比甲队多掘进2米,两队在距离隧道中点(30)米的地方会合。
在Excel2010的A1单元格中输入函数“=IF(1<>2,1,2)”,按回车键后,A1单元格中的值为________________。
在Excel“单元格格式”对话框的“对齐”选项卡中,“垂直对齐”选项中不包括(56)。
某企业的大数据工程项目包括如下四个阶段的工作:①数据获取,②数据清洗与整理,③数据分析,④数据展现。一般来说,工作量较大、花费时间较长的阶段是______(1),技术含量最高的阶段是______(2),准备向有关部门递交成果的阶段是______(3)。
桌面上有各种图标,图标在桌面上的位置()。
随机试题
以下哪一种复合物的形成属于间接法ELISA免疫反应结果
临产20小时,宫口开大2cm宫口开大6cm,3小时无进展
A.0.1mmB.0.2mmC.0.3mmD.0.5mmE.1.0mm钉洞固位形的直径一般为
《国家建筑标准设计图集》(16G101)平法施工图中,剪力墙上柱的标注代号为()。【2017年真题】
我国第一座自行设计建造的30万干瓦的核电站是()年12月15日并网发电的秦山核电站。
Theideathatsomegroupsofpeoplemaybemoreintelligentthanothersisoneofthosehypothesesthatdarenotspeakitsnam
[*]
Inourcontemporaryculture,theprospectofcommunicatingwith—orevenlookingat—astrangerisvirtuallyunbearable.Everyone
Wemightmarvelattheprogressmadeineveryfieldofstudy,butthemethodsoftestingaperson’sknowledgeandabilityremain
Itisnowclearthattheterminologyusedbyacultureprimarilyreflectsthatculture’sinterestsandconcerns.Forinstance,
最新回复
(
0
)