首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用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
66
问题
使用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全国计算机二级
相关试题推荐
补充完整下面的模板定义:template<classType>//Type为类型参数classXtwo{//由两个Type类型的数据成员构成的模板类Typea;Typeb;public:
有如下程序段:intx=1,y=2,z=3;x=x^z:y=y^z;z=x^y:cout<<x<<y<<z;这个程序段的输出结果是______。
运算符函数调用格式的表达式“y/x++”与表达式“y.operator/(operator++(x,0))”的含义相同,由此可看出()。
内部格式控制操作函数是在头文件()中定义的。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
在C++语言中函数返回值的类型是由()决定的
设有关键码序列(66,13,51,76,8l,26,57,69,23),要按关键码值递增的次序排序,若采用快速排序法,并以第一个元素为划分的基准,那么第一趟划分后的结果为()。
程序中有如下语句:for(inti=0;i<5;i++)cout<<*(p+i)<<",";能够依次输出int型一维数组DATA的前5个元素。由此可知,变量p的定义及初始化语句是______。
有如下程序:#include<iostream>usingnamespacestd;classA{public:staticinta;voidinit(){a=1;}A(inta=2){
随机试题
人们有目的、有计划地通过感官或辅助仪器,对处于自然状态下的客观事物进行系统考察,从而获取经验事实的研究方法是()。
中国甲公司与久居德国的法国人玛丽签订了一货物买卖合同,双方约定适用英国法。因双方争议得不到解决,甲公司诉诸中国某法院,依中国法,该争议已过时效,而依英国法则未过时效。依相关中国法律和司法解释,下列哪一选项是正确的?()
我国设计基本地震加速度是指()的地震加速度的设计取值。
来自与我国缔结税收协定国家的某外籍个人,在一家外国公司驻华代表处出任首席代表,该代表处采用核定利润方法征税。2009年在华时间为120天,9月份工资为80000元,全部为外国公司在境外支付,9月份在华工作时间为10天。该外籍个人9月份应纳个人所得税额为(
在经济周期的危机阶段,企业资金周转困难,需要银行的救助,所以此时银行的负债规模上升。()
2013年1月1日,甲公司某项特许使用权的账面原价为960万元,已摊销600万元,已计提减值准备60万元。预计尚可使用年限为2年,预计净残值为零,采用直线法按月摊销。不考虑其他因素,2013年1月甲公司该项特许使用权应摊销的金额为()万元。
欣赏你的同事,你和同事之间会合作得更加融洽;欣赏你的下属,下属会更加努力地工作;欣赏你的爱人,爱情会更加甘甜;欣赏你的学生,学生会更加可爱。________。填入划横线部分最恰当的一句是()。
FilmingShakespeare’sPoemsfor21stCenturyAudienceVocabularyandExpressionschunkcommitmentsonnetpractitione
A、Neitherofthemacceptsanyairwayletters.B、Theybothdelivermailstotheaddresseeinperson.C、BothrequirethattheAdvi
A、Hecansaveonlivingexpenses.B、Heconsiderscookingcreative.C、Hecanenjoyhealthierfood.D、Hethinkstake-awayistaste
最新回复
(
0
)