首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义
admin
2020-06-29
26
问题
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义,此程序的正确输出结果应为:
ELEPHANT
MOUSE
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#inClude
using hamespace std;
enom category {EHPTY, ELEPHANT,NOUSE);
char*output[]={"ENPTY","ELEPHANT","MOUSE"};
class Mammal
{
public:
Nammal(char*str)
{
//********found********
name =neW____________
strcpy(name,str);
}
virtual char*WhoAmI()=0 ;
virtual ~Mammal() {
delete[]name;}
void Print() {cout<
()<
private:
char*name;
};
class E2ephant:public Hammal
{
public:
//********found********
Elephant(char * str) :____________
{}
char*WhoAmI(){return output
[ELEPHANT];}
};
class Nouse:public Hammal
{
public:
Nouse(char* str) : Mammal
(str) { }
//********found********
char*WhoAmI(){____________}
};
int main()
{
//********found********
Hammal*pm=new_____________("Huanhuan");
pm->Print();
delete pm;
pm=new Nouse("Micky");
pm->Print();
delete pm;
return 0 ;
}
选项
答案
(1)char[strlen(str)+1]; (2)Mammal(sir) (3)return output[MOUSE]; (4)Elephant
解析
(1)主要考查分配空间,程序要给name分配空间,由下一条语句中strcpy(name,str)可知程序要把字符串str复制给name,因此要分配的空间大小为strlen(str)+1。
(2)主要考查考生对构造函数的掌握,因为Elephant类是Mammal类的派生类,所以其构造函数要使用成员列表先对Mammal类初始化。
(3)主要考查考生对枚举类型的掌握,先看程序:enum category{EMPTY,ELEPHANT,MOUSE}。再参考Elephant类中的WhoAmI函数:char*WhoA
ml(){return output[ELEPHANT];}。可知这里要
填写的返回语句为:return output[MOUSE];。
(4)主要考查考生对派生类的掌握,题目要求输出:
ELEPHANT
MOUSE
可知,要先调用Elephant类的WhoAml函数,因此给指针pm分配Elephant类空间。
转载请注明原文地址:https://kaotiyun.com/show/aByp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类声明:classWhy{intn;public:doubled;protected:longl;floatf;
下面有关for循环的正确描述是()。
下列函数模板的定义中,合法的是()。
在类Derived中,函数show()不能直接访问的数据成员是
下列关于C++流的表述中,正确的是
已知数组arr的定义如下:intarr[5]={1,2,3,4,5};下列语句中输出结果不是5的是
设数据集合为D={1,3,5,7,9},D上的关系为R,下列数据结构B=(D,R)中为非线性结构的是
下面不属于软件需求分析阶段主要工作的是
某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是()。
在开发一个C++程序的整个过程中,第3个步骤为()。
随机试题
男性,40岁。多饮、多尿、食欲减退伴体重下降4个月。体检:身高171cm,体重65kg。血糖19.2mmol/L,尿酮(+)。在治疗2个月后空腹血糖为10mmol/L,中、晚餐前血糖控制较满意。此时最佳措施是
患者,女,40岁。癫痫病史10年,平素性情急躁,心烦失眠,口苦咽干,时吐痰涎,大便秘结,发作则昏仆抽搐,口吐涎沫,舌红苔黄,脉弦滑数。其治法是
已经通过执业医师考核,但未经注册取得执业证书的
与胎儿宫内窘迫的治疗无关的是
在制造腐蚀严重或产品纯度要求高的金属设备时,可采用()制造设备。
下列关于利润表的表述中,正确的有()。
某普通住宅项目的建设单位委托招标代理机构,采用公开招标的方式办理该项目的招标事宜。公布招标信息后,在投标截止时间内,收到A、B、C、D、E共五家施工企业的投标文件,其中E属于两家施工单位的联合体。各施工企业均按招标文件的规定提供了投标保证金。招标代理机构按
有些地方对外来人口设立打工者居住区,你怎么看?
Impatiencehasbeenaroundforalongtime.Thereisnothingnewaboutpeoplelosingtheirpatiencewhilestuckintrafficorwa
A、ToaskforMr.Baker’sphoto.B、ToinviteMr.Bakertodinner.C、TosendamessagetoMr.Baker.D、ToaskMr.Bakerforhelp.
最新回复
(
0
)