首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是:
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是:
admin
2021-02-22
35
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定义。程序中位于每个“//ERROR****found****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是:
There is a white dog named Hoho.
There is a black dog named Haha.
There is a morley dog named Hihi.
注意:只修改每个/ERROR****found****下的那一行,不要改动程序中的其他内容。
#include
using namespace std;
//狗的颜色:黑、白、黄、褐、花、其他
enum DOGCOLOR{BLACK,WHITE,YELLOW,BROWN,PIEBALD,OTHER};
class Dog{//狗类
DOGCOLOR color;
char name[20];
static int count;
public:
Dog(char name[],DOGCOLOR color){
strcpy(this->name,name);
//ERROR**********found**********
strcpy(this->color,color);
}
DOGCOLOR getColor()const{return color;}
//ERROR**********found**********
const char*getName()const{return*name;}
const char*getColorStfing()const{
switch(color){
case BLACK:return "black":
case WHITE:return "white":
case YELLOW:return "yellow":
case BROWN:return "brown":
case PIEBALD:return "piebald":
}
return"motley";
}
void show()const{
cout<<"There is a"<
}
};
int main(){
//ERROR**********found**********
Dog dogl("Hoho",WHITE),dog2("Haha",BLACK);dos3("Hihi",OTHER);
dogl.show();
dog2.show();
dog3.show();
return 0;
}
选项
答案
(1)this->color=color; (2)const char getName()const{return*namc!;} (3)Dog dog1(”}toho”,WHITE),dog2(”Haha”,BLACK),dog3("Hihi",OTHER);
解析
(1)主要考查考生对strcpy函数的掌握,如果看到上一条语句strcpy(this->name,Ilame);,就以为本条语句也要用strcpy函数来赋值,这是错误的。strcpy函数只能复制字符串,根据类的私有成员声明可知,color是DOGC()LOR型的,这里直接使用赋值语句“=”即可。
(2)主要考查考生对函数返回值的掌握,先解读语句const char*getName()const{return*name;},要返回的是一个const的字符指针,同时函数内的值不能改变,name在类的私有成员声明中是个字符数组,*flame代表字符数组而不是字符指针,问题就出来了,需要修改返回类型:const char getName()const{return*name;}。
(3)语法错误,定义变量时,变量之间应使用“,”分开。
转载请注明原文地址:https://kaotiyun.com/show/Jzfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数convert(char*strOct)的功能是将八进制转换为十进制。提示:要每一位转换,然后把转换后得到的数累加起来即可。注意:不
有三个关系R、S和T如下:由关系R和S通过运算得到关系T,则所使用的运算为
下列对队列的描述中正确的是
有如下程序:#include<iostream>usingnamespacestd;classBook{public:Book(char*t=’’’’){strcpy(title,t);}
有如下类定义:classPoint{intx_,y_;public:Point():x_(0),y_(0){}Point(intx,inty=0):x_(x),y_(y){}};
将数据库的结构划分成多个层次,是为了提高数据库的物理独立性和
定义部门关系模式:部门(部门号,部门名,部门成员,部门总经理),使它不满足第一范式的属性是
数据库系统的三级模式不包括
下列语句分别是不同程序中的第一个输入输出语句,若去掉其中的’’<<left",输出效果将发生变化的是()。
在面向对象方法中,实现信息隐蔽是依靠
随机试题
关于疟疾,下列叙述哪项是错误的
下列哪项不是肿瘤的转移途径
A、平肝泻火,清心利水B、益气健脾,宣肺利水C、滋阴补肾,平肝潜阳D、滋阴补肾,兼清余热E、健脾化湿肾病综合征肝肾阴虚型治宜
下列不是艾滋病的口腔表征的是
()使房地产价格脱离其市场基础价格,导致房地产过热。
CDMA按照其采用的扩频调制方式的不同,可以分为()。
关于沥青混合料中的粗集料特点的说法,错误的是()。
根据2006新的《企业会计标准》,利润表中的利润分为()来计算利润
材料:以下是王老师进行“植物的呼吸作用”教学时的教学片段。【片段1】上课铃声一响,同学们拎着课前搜集的叶片跑向生物实验室,生物实验室一下子就热闹起来了:他们以4~6人为小组,有的挑选叶片,有的两手撑开袋子,有的将叶片分别装到两
What’sthemaintopicofthemonologue?
最新回复
(
0
)