首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义
请打开考生文件夹下的解决方案文件proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义
admin
2018-07-06
45
问题
请打开考生文件夹下的解决方案文件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://www.kaotiyun.com/show/kAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
静态成员函数没有()。
在函数中,可以用auto、extern、register和static这四个关键字中的一个来说明变量的存储类型,如果不说明存储类型,则默认的存储类型是()。
设有以下说明和定义:#include<iostream.h>Voidmain(){typedefunion{longi;intk[5];charc;}DATE;struct
下列关于C++函数的叙述中,正确的是()。
在进行了任何C++流的操作后,都可以用C++流的有关成员函数检测流的状态,其中只能用于检测刚进行的操作是否失败的函数名是()。
函数inttest(inta,intb=1,intc=0),下列调用不合法的个数是test(0);test(0,0);test();test(0,0,0);
下列程序完成从文件读取文件显示的同时写入第二个文件,则在程序中划线部分应该出现的语句是______。#include<iostream.h>#include(fstream.h)voidmain(){fstreamfi
使用ifstream流类定义流对象并打开磁盘文件时,文件的隐含打开方式为()。
在关系数据库中,用来表示实体之间联系的是______。
对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是
随机试题
A.庆大霉素+克林霉素B.异烟肼+利福平C.氟胞嘧啶+两性霉素D.磺胺嘧啶+甲氧苄啶E.替卡西林+克拉维酸钾腹腔脓肿宜选用
Evenifyouareagoodhigh-jumper,youcanjumponlyaboutsevenfeetofftheground.Youcannotjumpanyhigherbecausetheea
肾阳不足、寒邪内侵腹痛的特点是
密闭—通风排毒系统一般由密闭罩、通风管、()和通风机构成。
进行设备更新决策时,采用固定资产平均年成本法作为标准的原因包括()。
某单位招录了10名新员工,按其应聘成绩排名1到10,并用10个连续的四位自然数依次作为他们的工号。凑巧的是每个人的工号都能被他们的成绩排名整除,问排名第三的员工工号所有数字之和可能是多少?()
在上次考试中,老师出了一道非常古怪的难题,导致86%的考生不及格。这次考试之前,王见明预测说:“根据上次考试情况,这次考试不一定会出那种难题了。”胡思明说:“这就是说这次考试肯定不出那种难题了,太好了!”王见明说:“我不是那个意思。”下面哪句话与王见明说的
Salesweregoodbutdistributionproblemsledtoaslightdropinprofits.Thecompanyhadproblemswith______.
A、Heneededalargerbuilding.B、Hewantedanenvironmental-friendlyplaceforbusiness.C、Hewantedtolivedowntown.D、Heneed
A、Bossandemployee.B、Teacherandstudent.C、Customerandshopassistant.D、Touristandtravelagent.C推断题。女士的问话HowcanIhelp
最新回复
(
0
)