首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、right、top、bottom的初始化,缺省值都为0,请在
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、right、top、bottom的初始化,缺省值都为0,请在
admin
2017-03-22
42
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成类Rect的构造函数,实现对变量left、right、top、bottom的初始化,缺省值都为0,请在注释//********1********后添加适当的语句。
(2)完成类Rectangle的构造函数,请在注释//********2********后添加适当的语句。
(3)完成计算矩形对角线长度函数Diagonal(),请在注释//********3********后添加适当的语句。
(4)完成计算周长函数Girth(),请在注释//********4********后添加适当的语句。
程序输出:
50
140
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include
#include
class Rectangle
{
public:
int left , right , top , bottom;
//********1********
{
left=1;
right=r;
top=t;
bottom=b;
}
//********2********
{
left=rc.1eft;
right=rc.right;
top=rc.top;
bottom=rc.bottom;
}
float Diagonal()
{
//********3********
return
}
int Girth()
{
//********4********
return
}
};
int main()
{
Rectangle rect(20,50,40,80);
Rectangle rect2(rect);
cout<
cout<
return 0;
}
选项
答案
(1)添加语句:Rectangle(int 1,int r,int t,int b) (2)添加语句:Rectangle(Rectangle&rc) (3)将“return”补充完整为:return sqrt((right—left)*(right—left)+(bottom—top)*(bottom—top)); (4)将“return”补充完整为:return 2*((right—left)+(bottom—top));
解析
(1)构造函数函数名和类名一致,构造函数可以重载,即多个构造函数有相同的名字不同的参数,显然题目当中两个构造函数均有参数,由函数体体内“left=1;right=r;top=t;bottom=b;”,说明l,r,t,b为构造函数的参数,因此第1标识处应添加“Rectangle(int l,int r,int t,int b)”。
(2)和题目1一样,构造函数名和类名一致,函数体内:“left=rc.left;right=re.right;top=re.top;bottom=rc.bottom;”显然rc是Rect对象,故该构造函数的参数为re对象,故第2标识处应添加“Rectangle(Rectangle&rc)”。
(3)由对象的left、fight、top、bottom值可以求得矩形的长和宽,因此可采用勾股定理计算对角线长度,即第3标识处补充完整为:return sqrt((right.1eft)*(fight—left)+(bottom-top)*(bottom—top))。
(4)同样的周长可由长和宽的数值计算得到,长和宽之和的两倍即周长,第4标识处补充完整为:return 2*((right—left)+(bottom—top))。
转载请注明原文地址:https://kaotiyun.com/show/y9Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面是复数类complex的定义,其中作为友元函数重载的运算符“--”的功能是将参数对象的实部减1,然后返回对该对象的引用;请补充完整。classcomplex{private:intreal;iht
有以下程序:#include<iostream>usingnamespacestd;classBase{public:Base(){x=0;}intx;
下面程序的输出结果是【】。#include<iostream>usingnamespacestd;intx;voidfunA(int&,int);voidfunB(int,int&
在C++语言中,打开一个文件就是将这个文件与一个什么建立关联?
有以下程序#include<iostream.h>voidfun(inta,intb,intc){a=456,b=567,c=678;}voidmain(){
假定int类型变量占用两个字节,其有定义intx[10]={0,2,4};,则数组x在内存中所占字节数是
如下程序定义了“单词”类word,类中重载了
类Sample的构造函数将形参data赋值给数据成员data。请将类定义补充完整。classSample{public:{Sample(intdata=O);private:intdata;};Sample::Sample(in
下列关于运算符函数的描述中,错误的是
下面的函数定义是某函数模板能够生成的函数实例intsquare(intn)(returnn*n;)doublesquare(doublen)(retumn*n;)由此可知,该函数模板的定义是______。
随机试题
Windows中的“任务栏”上显示的是___________。
腹部肿块常见于结核性腹膜炎的
某公司欲解除与职工李某之间的劳动合同,其所提出的如下解约理由或做法中,哪些是有法律依据的?
律师作为法律顾问代理参与民事诉讼,代理______,必须得到被代理方的特别授权。
天馈线金属护套应在顶端及进入机房入口处的()作保护接地。
企业、顾客、员工三者之间形成了三类营销活动,下列各项不属于这三类营销活动的是()。
对处于同一行业内的企业都会发生影响的环境因素的集合是()。
下列有关留存收益资本成本的说法中,正确的有()。
以下程序运行后的输出结果是【 】main( ) {int i,j,a[ ][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++) for(j=i+1;j<3;j++)a[j][i]=0; fo
Isonlinegamblinglegal?Italldependsonwhereyoulive.LastSeptember,severalU.S.lawmakersaretryingtocrackdownont
最新回复
(
0
)