首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定义。程序中位于每个“//ERROR **** found ****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是: There is
请打开考生文件夹下的解决方案文件proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定义。程序中位于每个“//ERROR **** found ****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是: There is
admin
2020-04-07
80
问题
请打开考生文件夹下的解决方案文件proj1,其中有枚举DOGCOLOR、狗类Dog和主函数main的定义。程序中位于每个“//ERROR **** found ****”下的语句行有错误,请加以改正。改正后程序的输出结果应该是:
There is a white dog named Hobo.
There is a black dog named Haha.
There is a motley dog named Hihi.
注意:只修改每个“//ERROR **** found ****”下的那一行,不要改动程序中的其他内容。
#include<iostream>
using namespace std;
//狗的颜色:黑、白、黄、褐、花、其他
enum DOGCOLOR {BLACK, WHITE,YELLOW, BROWN, PIEBALD,OTHER};
class Dog(//狗类
DOGCOLOR color;
char FIame[2 0];
static int count;
public:
Dog(char flame[],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 * getColorString()const{
switch(color){
case BLACK: return"black";
case WHITE: return"white";
case YELLOW: return"yellow";
case BROWN: return"brown";
case PTEBALD: return"piebald";
}
return"motley";
}
void show()const {
cout<<"There is a"<<getColorString() <<"dog named"<<name<<’.’<<endl;
}
};
int main(){
//ERROR ******* found *******
Dog dogl("Hobo",WHITE),dog2("Haha",BLACK); dog3("Hihi",OTHER);
dog1.show();
dog2.show();
dog3.show();
return 0;
}
选项
答案
(1)this一>color=color; (2)const char getName()const{return *name;} (3)Dog dogl("Hoho",WHTTE),dog2("Haha",BLACK),dog3("Hihi",OTHER);
解析
(1)主要考查考生对strcpy函数的掌握,如果看到上一条语句strcpy(this—>name,name);,就以为本条语句也要用strcpy函数来赋值,这是错误的。Strcpy函数只能复制字符串,根据类的私有成员声明可知,color是DOGCOLOR型的,这里直接使用赋值语句“=”即可。
(2)主要考查考生对函数返回值的掌握,先解读语句const char * getName()const{return * name;},要返回的是一个const的字符指针,同时函数内的值不能改变,name在类的私有成员声明中是个字符数组,* name代表字符数组而不是字符指针,问题就出来了,需要修改返回类型:const,chat getName()const{retum name;}。
(3)语法错误,定义变量时,变量之间应使用“,”分开。
转载请注明原文地址:https://kaotiyun.com/show/qw8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
假定动态分配一个类型为Worker的具有n个元素的数组,并由P指向这个动态数组,如果要释放这个数组,则使用的语句为【】。
关系数据模型由关系数据结构、关系操作集合和【】三大要素组成。
下面程序段的运行结果是voidmain(){intt,a,b,c;a=1;b=2;C=2;while(a<b<c){t=a;a=b;b
下列对模板的声明中,正确的是()。
以下程序输出结果是______。#include<iostream.h>voidn(inti);voidf2(inti);charst[]=”Howdoyoudo!”;voidfl(inti){
下列关于getline()函数的描述中,不正确的是()。
软件工程的出现是由于()。
虚函数必须是类的()。
下面关于break语句的描述中,不正确的是
随机试题
男性,18岁。近一年反复腰部疼痛,活动受限。近两月来,又出现双髋疼痛,轻度屈曲畸形,需拄拐行走。X线检查显示:双侧骶髂关节面模糊,双侧股骨头表面毛躁,髋关节间隙变窄。(2012年第118题)该患者最有可能的诊断是
下列的特定穴中,哪种穴是治疗急性病症的首选
建筑火灾的发展过程一般包括()和熄灭期。
成套配电装置柜体安装完毕后,应()。
事业单位年终结账时,下列项目中不应转入“非财政补助结余分配”科目的是()。
社会政策主体是指制定和实施社会政策的(),它是社会政策运行中的核心要素之—。
在知识的提取阶段,个体应用所学知识来解决实际问题,使所学知识产生广泛迁移。()
我们党领导人民治理国家的基本方略是:
基于以下题干,回答问题6匹马名字分别为G、L、M、T、V、Z。它们进入一次比赛,开始位置被分为从1至7个连续位置,7位骑师有资格参加比赛。每位骑师的数字与开始位置的数字对应,有一位骑师将不被安排任何马,与这位骑师数字对应的开始位置在比赛中空着。依
有如下程序段:inti=1;while(1){i++;if(i==10)break;if(i%2==0)eout<<’$’;}执行这个程序段输出字符*的个数为
最新回复
(
0
)