首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)完成类Rect的构造函数,实现对变量left、fight、top、bottom的初始化,缺省值都为0,请在
admin
2021-06-10
42
问题
使用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://jikaoti.com/ti/Odh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
结构化程序所要求的基本结构不包括( )。
下列关于运算符重载的叙述中,错误的是()。
有如下程序:#includeusingnamespacestd;classMusic{public:voidsetTitle(char*str){strcpy(title,str);}protected:charty
深度为7的完全二叉树中共有125个结点,则该完全二叉树中的叶子结点数为
有如下程序:#includeusingnamespacestd;classBase{intm;public:Base(){cout
下列叙述中正确的是( )。
请打开考生文件夹下的解决方案文件proj3,其中定义了Mystring类,一个用于表示字符串的类。成员函数reverse的功能是将字符串进行“反转”。例如,将字符串ABCDEF“反转”后,得到字符串FEDCBA;将字符串ABCDEFG“反转”后,得到字符串
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,其中定义了CharShape类、Triangle类和Rectangle类。CharShape是一个抽象基类,它表示由字符组成的图形(简称字符图形),纯虚函数
请打开考生文件夹下的解决方案文件pro]3,其中声明的CDeepCopy是一个用于表示矩阵的类。请编写这个类的赋值运算符成员函数operator:,以实现深层复制。要求:补充编制的内容写在“//********333********”与
在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是
随机试题
颈椎间盘退行性变是颈椎病发生与发展中最基本的原因。
A.咪达唑仑B.哌替啶C.阿曲库铵D.氯胺酮E.硫喷妥钠可能诱发致命的急性间歇性卟啉症的是
药物的给药途径不同,则吸收过程和部位也不相同。其中口服给药的最主要吸收部位是()。
根据《担保法》的规定,不定期保证的保证期间为主债务履行期间届满之日起()。
水利工程建设监理对工程建设的投资、工期和质量实行管理的工作方式为()。
关于大理石特性的说法,正确的是()。
斗容量为1m3的反铲挖掘机,挖三类土,装车,深度3m内,小组成员2人,机械台班产量为4.8(定额单位100m3),则挖100m3的人工时间定额为()。
下列可以作为抵押财产的是()。
Itishighlydesirablethatanewpresident_________forthiscollege.
在3×3的正方形网格中。已将图中的三个小正方形涂上阴影(如图),若再从其余小正方形中任选一个也涂上阴影。那么使得阴影部分为轴对称的概率是:
最新回复
(
0
)