首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在
admin
2021-06-10
105
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在注释//********1********后添加适当的语句。
(2)完成类Rectangle的构造函数,请在注释//********2********后添加适当的语句。
(3)完成计算矩形对角线长度函数Diagonal(),请在注释//********3********后添加适当的语句。
(4)完成计算周长函数Girth(),请在注释//********4********后添加适当的语句。
程序输出:
50
140
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
1 #include
2 #include
3 class Rectangle
4 (
5 public:
6 int left f right l top,bottom;
7 //********1********
8
9 {
10 left=1,
11 right=r ;
12 top=t ;
13 bottom=b;
14 }
15 //********2********
16 {
17 left=rc.1eft;
18 right=rc.right;
19 top=rc.top ;
20 bottom=rc.bottom;
21 }
22 float Diagonal()
23 {
24 //********3********
25 return
26 }
27 int Girth()
28 {
29 //********4********
30 return
31 }
32
33 j;
34 int main()
35 {
36 Rectangle rect(20,50,40,80);
37 Rectangle rect2(rect);
38 cout<
39 cout<
40 return 0 ;
41 }
选项
答案
(1)添加语句:Rectangle(int 1,int r,intt,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));
解析
类Rectangle是描述了一个矩形,私有成员分别描述矩形的坐标值,构造函数给私有数据成员赋初值。Rectangle类的Diagonal()和Girth()分别计算矩形的对角线长度和周长,可通过矩形的长和宽计算得到。
[解题思路]
(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=re.1eft;right=rc.right;top=re.top;bottom=rc.bottom;”,显然re是Rect对象,故该构造函数的参数为rc对象,故第2标识处应添加“Rectangle(Rectangle&rc)”。
(3)由对象的left、right、top、bottom值可以求得矩形的长和宽,因此可采用勾股定理计算对角线长度,即第3标识处补充完整为:return sqrt((right.1eft)*(right—left)+(bottom—top)*(bottom—top))。
(4)同样的周长可由长和宽的数值计算得到,长和宽之和的两倍即周长,第4标识处补充完整为:return 2*((right-left)+(bottom-top))。
转载请注明原文地址:https://kaotiyun.com/show/hkfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:46
下面叙述中错误的是( )。
设二叉树如下:则中序序列为
有如下函数模板定义:templateT1FUN(T2n){returnn*5.0;}若要求以int型数据9作为函数实参调用该模板,并返回一个double型数据,则该调用应表示为
对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是( )。
有如下类定义:classFather{//基类public:Father(strings):name(s){}private:stri
内部格式控制操作函数是在头文件()中定义的。
请打开考生文件夹下的解决方案文件proj3,其中声明了MiniComplex是一个用于表示复数的类。请编写这个operator+运算符函数,以实现复数的求和运算。两个复数的和是指这样一个复数:其实部等于两个复数的实部之和,其虚部等于两个复数的虚部之和。例如
已知将运算符’’+’’和’’*’’作为类Complex的成员函数重载,设c1和c2是类Complex的对象,则表达式c1+c2*c1等价于()。
下列选项中,正确的C++标识符是()。
随机试题
患者,女,30岁。反复上腹痛5年,以餐前明显,伴腹胀。近1周腹痛加重。体格检查未发现明显阳性体征。问题1:可考虑的检查措施有1.消化道钡剂2.胃镜3.腹部CT4.13C-尿素呼气试验5.腹部超声6.24小时食管pH监测
属于系统误差的有
以下哪类排水可以与下水道直接连接?
背景某公司拟投标某市政工程,该工程技术要求较高,而该公司在这类工程的施工中有丰富的业绩和较高的声望。招标单位提供的招标文件提供了工程量清单。在购买标书后,对报价部分采用了如下计算方法,工程量直接使用清单数量,价格使用某定额站的信息价格。由于措施项目一览表
一笔会计分录主要包括三个要素即会计科目、记账符号和金额。()
央视发起“谁是家里的顶梁柱”调查,而一个国家。一个民族,更需要顶梁柱,那么谁称得上是国家顶梁柱?请谈谈你对顶梁柱的看法。
下列选项中应当认定为在夫妻关系存续期间夫妻共有财产的是()。
Abusinessownedandoperatedbyonepersoniscalleda______proprietorship.
在C语言中,如果下面的变量都是血类型,则输出的结果是______。sum=pad=5;pAd=sum++,pad++,++pAd;printf("%d\n",pad);
有如下程序:#include<iostream>usingnamespacestd;classObj{staticinti;public:Obj(){i++;}~Obj(){i
最新回复
(
0
)