首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在
admin
2021-06-10
89
问题
使用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
下面叙述中错误的是( )。
内部格式控制操作函数是在头文件()中定义的。
有如下类定义:classFather{//基类public:Father(strings):name(s){}private:stri
设栈的存储空间为S(1:50),初始状态为top=51。现经过一系列正常的入栈与退栈操作后,top=20,则栈中的元素个数为()。
字符串"8+a=\tb\n\r"的长度为
请打开考生文件夹下的解决方案文件pro]3,其中声明的CDeepCopy是一个用于表示矩阵的类。请编写这个类的赋值运算符成员函数operator:,以实现深层复制。要求:补充编制的内容写在“//********333********”与
有如下定义:inta[5]={1,3,5,7,9},*p=a;下列表达式中不能得到数值5的是()。
下列选项中不属于软件生命周期开发阶段任务的是()。
在E-R图中,用来表示实体的图形是()。
随机试题
白细胞:分析仪法(+),镜检法(一),出现这种化学法分析结果与镜检结果不相符的情形可能的解释
大黄粉末微量升华可得
已知i1=2i2,n1=n2/2,则(F/P,i1,n1)与(F/P,i2,n2)的关系是()。
一般来说,突破三角形上下两条直线的包围,继续原有既定方向的时间要尽量晚,越靠近三角形的顶点,三角形的各种功能就越明显。()
根据《跟单信用证统一惯例》,关于海洋运输分批装运和转运的说法,正确的是()。
在对被审计单位连续编号的订购单进行测试时,注册会计师可以以订购单的编号作为所测试订购单的识别特征。()
以下属于房地产有偿转让的情况有()。
下列哪些是激励应遵循的原则()
关于物权的特征说法正确的是()
Areportlastweekshowedthatalmosthalfofallmenfailedtotakeuptheirofferingoftwoweekspaternityleave(陪产假).TheEq
最新回复
(
0
)