首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的
admin
2018-03-13
128
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含程序文件main.cpp,其中有类Mammal(“哺乳动物”)、类Elephant(“大象”)、类Mouse(“老鼠”)的定义和主函数main的定义。请在横线处填写适当的代码并删除横线,以实现上述定义。此程序的正确输出结果应为:
ELEPHANT
MOUSE
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
#include
using namespace std;
enum category {EMPTY, ELEPHANT,MOUSE);
char*output[]={"EMPTY","ELEPHANT","MOUSE"};
class Mammal
{
public:
Mammal(char*str)
{
//**********found**********
name=new__________
strcpy(name,str);
}
virtual char*WhoAmI()=0;
virtual ~Mammal(){
delete[]name;}
void Print(){cout<
private:
char*name;
};
class Elephant:public Mammal
{
public:
//**********found**********
Elephant(char*str):__________{}
char*WhoAmI(){return output[ELEPHANT];}
};
class Mouse:public Mammal
{
public:
Nouse(char*str):Mammal(str){}
//**********found**********
char*WhoAmI(){________}
};
int main()
{
//**********found**********
Mammal*pm=new_________("Huanhuan");
pm->Print();
delete pm;
pm=new Mouse("Micky");
pm->Print();
delete pm;
return 0;
}
选项
答案
(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类的WhoAm1函数,因此给指针pm分配Elephant类空间。
转载请注明原文地址:https://kaotiyun.com/show/9VAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若变量已正确定义并赋值,以下符合C++语言语法的表达式是
面向对象的设计方法与传统的面向过程的方法有本质不同,它的基本原理是()。
虚函数必须是类的______。
在关系运算中,______运算是对两个具有公共属性的关系所进行的运算。
函数定义为Fun(int&i),变量定义n=100,则下面调用正确的是
下列程序的输出结果是#include<iostream>usingnamespacestd;intmain(){chara[]="Hello,World
结构化程序设计的主要特点是
在下面程序的横线处填上适当的内容,使程序执行后的输出结果为1/2005。#include<iostream.h>usingnamespacestd:classDatepubl
以下函数模板max()的功能是:返回数组a中最大元素的值。请将横线处缺失部分补充完整。template<typenameT>Tmax(Ta[],intn){Tm=a[0];for(in
下列程序的输出结果为2,请将程序补充完整。#include<iostream>usingnamespacestd;classBase{public:______voidfun(){cout<<1;}
随机试题
“五经”是儒家作为研究基础的古代五本经典书籍的合称。其中,被誉为“群经之首,大道之源”的是()
Becauseofbadweathertheplanewas______forhalfanhour.
A.恶性肿瘤B.非肿瘤性病变C.交界性肿瘤D.癌前病变纤维囊性乳腺病是
关于大脑半球的描述,正确的是
下列有关模板分类的叙述正确的是()。
凡支出的用途与几个会计年度相关的,应计入()。
根据下列材料回答问题。总数前三的国家的论文总数约占所有国家论文总数的()。
Windows98支持的文件系统不包括( )。
1,000
Moralresponsibilityisallverywell,butwhataboutmilitaryorders?Isitnotthesoldier’sdutytogiveinstantobedienceto
最新回复
(
0
)