首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义
admin
2018-07-06
46
问题
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为:
ELEPHANT
MOUSE
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include<iostream>
using namespace std;
enum category{ENPTY,ELEPHANT,NOUSE);
char*output[ ]={"ENPTY","ELEPHANT","NOUSE"};
class Marrlitlal
{
public:
Nammal(char*str)
{
//*******found*******
name=new_______
strcpy(name,str);
}
virtual char*WhoAmI( )=0;
virtual~Nammal( ){
delete[ ]name;}
void Print( ){cout<<WhoAmI( )<<endl;}
private:
char*name;
};
class Elephant:public Nammal
{
public:
//*******found*******
Elephant(char*str):_______{}
char*WhoAmI( ){return output[ELEPHANT];}
};
class Nouse:public Nammal
{
public:
Mouse(char*str):Mammal(str){}
//*******found*******
char*WhoAml( ){_______}
};
int main( )
{
//*******found*******
Mammal*pm=new_______("Huanhuan");
pm->Print:( );
delete pm;
pm=newNouse("Micky");
pm->Print( );
delete pm;
return0;
}
选项
答案
(1)char[strlen(str)+1]; (2)Mammal(str) (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*WhoAmI( ){return output[ELEPHANT];}。可知这里要填写的返回语句为:return output[MOUSE];。
(4)主要考查考生对派生类的掌握,题目要求输出:
ELEPHANT
MOUSE
可知,要先调用Elephant类的WhoAmI函数,因此给指针pm分配Elephant类空间。
转载请注明原文地址:https://kaotiyun.com/show/kAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下函数模板定义:template<typenameT1,inta2,inta3>T1fun(T1a1){return(al+a2+a3);}则下列调用中正确的
关于continue语句叙述不正确的是()。
下列选项中,不是一个算法的基本特征的是()。
结构化分析方法是面向()的自顶向下,逐步求精进行需求分析的方法。
下面关于this指针的说法中,不正确的是()。
下列字符串中,正确的C++标识符是()。
语句序列longx;x=0L;可用一个语句表示为______。
执行语句序列charstr1[10]="ABCD",str2[10]="XYZxyz";for(inti=0;strl[i]=str2[i];i++);后,数组strl中的字符串是______。
用树结构表示实体类型及实体间联系的数据模型称为______。
下列字符串中,不可以用作C++标识符的是
随机试题
下列哪种说法不是易栓症血栓形成的机制
胃痛的治疗,主要是
抗炎作用最强的药物是()。
在建设工程委托监理合同履行中,下列关于违约责任的说法中正确的有()。
有关措施项目清单与计价表的编制规定,表述错误的是()。
我国海岸线以钱塘江口为界,其北以泥沙质海岸为主,其南以基岩海岸为主。()
空运单是航空货物运输合同订立和运输条件及承运人接受货物的最终证据。()
你是一位听不懂外文的志愿者,一位不能区分国别的外国人向你问路,你怎么办?
X公司2013年净利润15000万,折旧2000万,资产负债表如下:(单位:万)预计2014年X的净利润、折旧、净盈利资本都增长10%,X公司有如下4个候选项目(均为永续不增),假设投资所需要资金来自自有资金,无风险利率为4%,市场风险溢价为8%,税率
下列各项中,正确的电子邮箱地址是()。
最新回复
(
0
)