首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,并且使程序输出的结果为: 30 130 注意:错误的语句在//******error******的下面,修改该语句即可。 #include<ios
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,并且使程序输出的结果为: 30 130 注意:错误的语句在//******error******的下面,修改该语句即可。 #include<ios
admin
2016-10-28
31
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正确运行,并且使程序输出的结果为:
30
130
注意:错误的语句在//******error******的下面,修改该语句即可。
#include<iostream.h>
int a=10;
class CObj
{
public:
CObj()
{
a=b=0;
}
void display()
{
//********error********
cout<<a<<b<endl;
}
void func(int a)
{
//********error********
a+=a;
}
void func2()
{
//********error********
a+=a;
}
private:
int a,b;
};
void main()
{
CObj obj;
obj.func(3);
obj.display();
obj.func2();
obj.display();
}
选项
答案
(1)cout<<a<<b<<endl; (2)this->a+=a; (3)a+=::a;
解析
(1)成员函数display()打印变量a和b的值,即cout输出a和b的值,cout流中的数据是用流插入运算符“<<”顺序加入的,因此“<”不正确,因此第1个标识下应改成cout<<a<<b<<endl。
(2)在func(int a)中,参数a传递进来,其和成员变量a名字一样,因此第2个标识下的“a+=a”有歧义,从程序的运行结果来分析,CObj obi声明对象obj,初始化类成员变量a和b均为0,调用func函数后输出30,说明a为3,b为0,因此这里应该是成员变量与参数a的和赋给成员变量a,正确的写法是“this->a+=a;”。
(3)func2()函数虽然没有参数,但是成员变量a和全局变量a重名,第3个标识下“a+=a”也会有歧义,分不清楚是全局变量加倍还是类成员变量加倍或者其他情况,调用func2()函数后,输出“130”,说明a为13,b为0,因此是成员变量与全局变量a的和赋给成员变量a,正确的写法是“a+=::a;”,“::a”表示是全局变量a。
转载请注明原文地址:https://kaotiyun.com/show/UKNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#include<iostream>usingnamespacestd;template<typenameT>Ttotal(T*data){Ts=0;While(*dat
有如下的程序:#include<iostream>usingnamespacestd;classAT{friendostream&operator<<(ostream&,AT);}at;os
下列关于析构函数的描述中,错误的是()。
下列函数的运行结果是()。#include<iostream.h>intf(inta,intb){intc;if(a>b)c=1;elseif(a==b)C=0;elsec=-1;
下列有关指针的用法中错误的是()。
下面程序的功能是将字符数组a中下标值为偶数的元素从小到大排列,其他元素不变,请填空。#include<iostream.h>#include<string.h>voidmain(){c
下列关于函数模板实参不能省略的情况说明不正确的是
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
有如下的类模板定义:template<typenameTYPE>classMyClass{TYPEn;public:MyClass(TYPEk);
随机试题
名句“天际识归舟,云中辨江树”出自()
小儿腹泻和酸中毒基本纠正时,突然惊厥,应首先考虑
邪毒感染型产后发热,相当于西医学何种病证
子宫内膜癌最多见的病理类型是
下列说法正确的为()。
企业与同一客户同时订立的两份或多份合同,应当合并为一份合同进行会计处理的是()。
王芳在商场购买5件打折商品,原价为150元,折后实际支付40元,在这次购买活动中,40元执行的是货币的()。
设A是n阶矩阵,若存在正整数k,使线性方程组Akx=0有解向量α,且Ak-1α≠0。证明:向量组α,Aα,…,Ak-1α是线性无关的。
软件调试的目的是______。
两个或两个以上的模块之间关联的紧密程度称为()。
最新回复
(
0
)