首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下: Constructor. Default constructor Area is12 Area is0 Area is12
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下: Constructor. Default constructor Area is12 Area is0 Area is12
admin
2019-05-14
80
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正main()函数中的错误,使程序的输出结果如下:
Constructor.
Default constructor
Area is12
Area is0
Area is12
注意:错误的语句在//******error******的下面,修改该语句即可。
#include<iostream.h>
class CRectangle
{
private:
double length,width;
public:
CRectangle()
{
cout<<"Defaultconstructor.\n";
}
CRectangle(double1,double w)
{
length=1;width=w;
cout<<"Constructor.\n";
}
void Set(double1,double w)
{
this->length=1;
this->width=w;
}
void GetArea()
{
cout<<"Area is"<<length*width<<endl;
}
};
void main()
{
CRectangle Rectl(3.0,4.0);
//******error******
CRectangle Rect2(1);
//******error******
CRectangle Rect3;
Rect1.GetArea();
//******error******
Rect2.Set(0);
Rect2.GetArea();
Rect3.GetArea();
}
选项
答案
(1)CRectangle Rect2; (2)CRectangle Rect3(Rect1); (3)Rect2.Set(0,0);
解析
(1)构造函数CRectangle()不带有参数,CRectangle(double1,double w)带有2个参数,在创建对象时会自动调用构造函数,但是参数必须匹配,第1个标识下定义Rect2对象时,有一个参数,而类CRectangleoe()中并没有重载一个参数的构造函数,编译后出错,因此第1标识下应改为“CRectangle Rect2;”。
(2)Rect3.GetArea()输出的结果和Rect1.GetArea()输出结果一致,因此对象Rect3和对象Rect1两者具有相同的length和width值,除定义Rect3对象之外没有改变Rect31的length和width值,因此Rect3成员变量的初始化是通过拷贝构造函数类实现的,即用Rect1对象去初始化Rect3,因此第2个标识下应改为“CRectangle Rect3(Rect1):”。
(3)Rect2.GetArea()的输出结果为0,说明Rect2的成员变量length和width值至少一个为0,而Set()函数必须有两个参数,这里Rect2.Set(0)参数不匹配,应改为“Rect2.Set(0,0);”或者“Rect2.Set(0,5)”,两个参数当中至少一个为0即可。
转载请注明原文地址:https://kaotiyun.com/show/5E8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序段:charC[20]="examination";C[4]=0;cout<<c<<endl;这个程序的输出结果是______。
以下程序的执行结果为()。#include<iostream.h>classSample{intn;public:Sample(inti){n=i;}operator++(){n++;}
在下面的4个关键字中用来说明虚函数的是()。
下面程序的运行结果是()。#include<iostream.h>intx=5;intfan(inta){intc;c=x*a;returnc;}voidmain(
阅读以下程序:#include<iostream.h>voi6main(){staticinta[][2]={5,3,1,2};inti,j,s1=0;for(i=0;i<2;i++)for(
设有关键码序列(66,13,51,76,8l,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为()。
随机试题
为防止离心式压缩机喘振,正常运行时防喘振装置应投自动。
A企业按先进先出法计算材料的发出成本。2010年10月1日结存甲材料200千克,每千克实际成本100元。本月发生如下有关业务:(1)4日,购入甲材料100千克,每千克实际成本105元,材料已验收入库。(2)6日,发出甲材料160千克。(3)8日,购入
A.罹患率B.相对危险度C.有效率、副反应发生率D.抗体阳转率、效果指数E.患病率调查某市甲型肝炎爆发,分析时可选用指标
患儿,7岁,左下第一磨牙近中邻面深龋,探诊敏感,冷测(+),无迟缓性痛。X线片示:患牙根尖未发育完全,根尖无明显暗影。腐质去净后探及针尖大小穿髓孔。此时最恰当的治疗方法是
在拌制的混凝土中掺入减水剂,如不减少拌合用水量,则能够显著()。
通风与空调工程竣工验收应由建设单位负责组织,()共同参与,合格后即应办理竣工验收手续。
(2008年考试真题)甲公司是一家上市公司,有关资料如下:资料一:2008年3月31日甲公司股票每股市价25元,每股收益2元;股东权益项目构成如下:普通股4000万股,每股面值1元,计4000万元;资本公积500万元;留存收益9500万元。公司实行稳定增长
对于基本建设项目的资金,存款人应当申请开立专用存款账户、基本存款账户。()
我国反垄断法律制度禁止具有市场支配地位的经营者,无正当理由以低于成本的价格销售商品。下列各项中,属于法定正当理由的有()。
Mr.Cookhasbeen______withevaluatingandrecommendingusesofcomputertechnologyinallaspectsofbusiness.
最新回复
(
0
)