首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: number1=a number2=a number1=a number2=b 注意:错误的语句
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: number1=a number2=a number1=a number2=b 注意:错误的语句
admin
2015-05-30
40
问题
使用VC6打开考生文件夹下的源程序文件modil.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
number1=a
number2=a
number1=a
number2=b
注意:错误的语句在//********error********的下面,修改该语句即可。
1 #include
2 class CMyClasS
3 {
4 public:
5 //******error******
6 friend void SetValue(CMyClassobj,char C)
7 {
8 obj.numberl=C ;
9 obj.number2=C ;
10 }
11 //******error******
12 void SetValue(CMyClass obj,char C1,char c2)
13 {
14 obj.numberl=cl;
15 obj.number2=c2;
16 }
17 void display()
18 {
19 cout<<"numberl="<
20 cout<<"number2="<
21 }
22 private:
23 char numberl|number2;
24 } ;
25 void main()
26 {
27 CMyClass t,
2 8 SetValue(t,’a’);
29 t.display();
30 //******error******
31 t.SetValue(&t,’a’,’b’);
32 t.display();
33 }
选项
答案
(1)friend void SetValue(CMyClass&obj,char c) (2)void SetValue(CMyClass&obj,char cl,char c2) (3)t.SetValue(t,’a’,’b’);
解析
程序中定义了类CMyClass,含有两个成员变量char型变量numberl和number2,友元SetValue()函数,成员函数SetValue()和display()函数,SetValue()函数可改变number1和number2的值,display()函数在屏幕上打印number1和number2的值。
[解题思路]
(1)根据程序的输出结果,函数SetValue(t,’a’)执行后,输出number1和number2的值均为a,在SetValue(t,’a’)执行中改变了对象t的成员number1和number2的值,故SetValue(t,’a’)的第一个参数传递的是引用,因此第1个标识下应改为“friend void SetValue(CMyClass&obj,char c)”。
(2)主函数中t.SetValue(t,’a’,’b’)后调用t的display()函数,在屏幕上打印,“numberl=a number2=b”,可知在SetValue(CMyClass obj,char cl,char c2)中改变了对象t的成员numberl和number2的值,因此第一个参数传递为引用方式,故第2个标识下应改为“void SetValue(CMyClass&obj,char cl,char c2)”。
(3)由2可知,第3个标识下是调用函数SetValue(CMyClass&obj,char cl,char c2)函数,函数的第一个参数为引用,直接使用变量名即可,因此第3标识下的引用使用错误,应改为“t.SetValue(t,’a’,’b’);”。
转载请注明原文地址:https://kaotiyun.com/show/kJNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
阅读下面的程序:#include<iostream.h>voidmain(){intx;cin>>x;if(x++>5)cout<<x<<endl;else
在数据库系统中,描述数据库中全体数据的逻辑结构和特征的数据模式为()。
下列程序的输出结果是【】。#include<iostream.h>#include<string.h>voidmain(){charb[30];strcpy(&b[0],"XY");
有如下程序:#include<iostream>usingnamespacestd;classsample{private:intx,y;public:sample(inti
若有以下定义:inta[]={1,2,3,4,5,6,7);charcl=’b’,c2=’2’;则数值不为2的表达式是()。
在长度为n的顺序表的第i(1≤i≤n+1)个位置上插入一个元素,元素的移动次数为______。
在C++语言中,唯一的一个三目运算符是【】。
用树形结构来表示实体之间联系的模型称为
一个项目具有一个项目主管,一个项目主管可管理多个项目。则实体集“项目主管”与实体集“项目”的联系属于【】的联系。
随机试题
患者,男性,25岁。骤然抬起肿物时腰剧痛,继而右下肢麻痛,咳嗽及用力排便时疼痛加剧,不能下床活动。查体:活动明显受限,直腿抬高仅达40°,右足外侧皮肤感觉减退,右跟腱反射减弱,X线片:腰椎轻度侧弯,未见其他异常。治疗后症状缓解,进一步治疗应选择
A.芒硝B.商陆C.芦荟D.牵牛子治疗蛔虫、绦虫及虫积腹痛者宜选用的药物是
根据《人民币银行结算账户管理办法》的规定,除注册验资的临时存款账户转为基本存款账户和因借款转存开立的一般存款账户外,存款人开立单位银行结算账户,自正式开立之日起若干工作日后方可办理付款业务,该工作日为()个工作日。
在我国,一般采用单式记账凭证的行业是()。
()是全面风险管理、资本监管和经济资本配置得以有效实施的基础。
商业经营失败的最大原因是低于预期的()水平。
在发电厂高压侧母线上发生短路时,冲击系数为()。
科学家做过一个实验:拍打放有跳蚤的桌子,跳蚤迅即跳起,高度是其身长的一百倍以上。然后给跳蚤罩上一个玻璃罩,这一次跳蚤碰到了玻璃罩。连续多次后,跳蚤改变了起跳高度以适应环境,每次跳跃总保持在罩顶以下的高度。接下来逐渐降低玻璃罩的高度,跳蚤都在碰壁后主动改变自
下列选项中,汽车产量同比增速最低的是()。
窗体上有一个名称为Text1的文本框;一个名称为Timer1的计时器控件,其Interval属性值为5000,Enabled属性值是True。Timer1的事件过程如下:PrivateSubTimer1_Timer() StaticflagA
最新回复
(
0
)