首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中在编辑窗口内显示的主程序文件中定义有类ABC和主函数main。程序文本中位于每行“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中在编辑窗口内显示的主程序文件中定义有类ABC和主函数main。程序文本中位于每行“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果
admin
2016-08-19
45
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,其中在编辑窗口内显示的主程序文件中定义有类ABC和主函数main。程序文本中位于每行“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:
21 23
注意:只修改每个“//ERROR****found****”下面的一行,不要改动程序中的其他任何内容。
1 #include
2 using namespace std;
3
4 class ABC{
5 public:
6 //ERROR **********found**********
7 ABC(){a=0;b:0;c=0;}
8 ABC(int as,int bb,int cc);
9 void Setab(){++a,++b;}
10 int Sum(){return a+b+c;}
11 private:
12 int a,b;
13 const int c;
14 };
15
16 ABC::ABC(int aa,int bb,int cc):c(cc){a=as;b:bb;)
17
18 int main()
19 {
20 ABC x(1,2,3),y(4,5,6);
21 ABC z,*w=&z;
22 w->Setab();
23 //ERROR **********found**********
24 int s1=x.Sum()+y->Sum();
25 cout<
26 //ERROR**********found**********
27 int s2=s1+w.Sum();
28 cout<
29 return 0;
30 }
选项
答案
(1)ABC():a(0),b(0),c(0){} (2)int s1=x.Sum()+y.Sum(); (3)int s2=sl+w->Sum():
解析
(1)主要考查考生对构造函数的掌握情况,根据私有成员的定义:const int c;可知,c为常变量,因此构造函数必须使用成员列表初始化来给C赋初始值。
(2)主要考查考生对类的指针的掌握情况,根据主函数的第一条语句:ABC x(1,2,3),y(4,5,6);可知,x和y都是ABC类,但不是指针,因此它们调用ABC类的成员函数要使用标识符“.”,而不是“->”。
(3)主要考查考生对类的指针的掌握情况,根据主函数的第二条语句:ABC z,*w=&z;可知,w是ABC类的指针,指向z,因此w调用ABC类的成员函数时要使用标识符“->”,而不是“.”。
转载请注明原文地址:https://kaotiyun.com/show/oZNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下程序:#include<iostream>usingnamespacestd;classsample{private:intn;public:sample(){}
以下程序段有()处错误。#include<iostream>usingnamespacesstd;classSample{private:intn;public:
若有以下程序:#include〈iostream〉usingnamespacestd;classBase{public:Base(){x=0;
要把高级语言编写的源程序转换为目标程序,需要使用()。
cin.getline(line,sizeof(line),’x’)表示的意思是读取90个字符存放到line如果遇到______则结束输入。
如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是
已知有定义constintD=5;inti=1;doublef=0.32;charc=15;则下列选项错误的是
若有以下程序:#include<iostream>usingnamespacestd;classA{private:inta;public:voidseta(intx
以下哪个不是C++语言中的有效标识符()。
C++语言中while循环和do-while循环的主要区别是
随机试题
Threeyearsago,hegot______drugs.Nowwithmyhelp,hedecides______givingitup.
关于胃排空的叙述,正确的是
结膜结石的临床表现为
A.中心静脉压低,血压低B.中心静脉压低,血压正常C.中心静脉压高,血压低D.中心静脉压高,血压正常E.中心静脉压正常,血压低血容量相对过多的表现是
某钢结构厂房柱脚采用埋入式柱脚,地质土的测试结果为:pH=5.1,氧化还原电位为250mV,质量损失为2.5g,则土对钢结构的腐蚀性评价应为下列()项。
后张法预应力孔道压浆时,水泥浆的强度应符合设计规定,且不得低于()MPa。
职工工资中的变动项目是指每月都会发生变化的工资项目,如下面的()项目。
按《公约》规定,下列有关发盘生效的说法正确的是()。
自制设备重置成本包括()。
Howcanwegetridofgarbage?Dowehaveenoughenergysourcestomeetourfutureenergyneeds?Thesearetwoimportantques
最新回复
(
0
)