首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。 (1)定义私有数据成员leftPoint、topPoint、righ
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。 (1)定义私有数据成员leftPoint、topPoint、righ
admin
2015-05-30
58
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。
(1)定义私有数据成员leftPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标,它们都是double型的数据。请在注释//********1********之后添加适当的语句。
(2)完成默认构造函数CRect的定义,指定缺省实参为0,都是double型的数据。请在注释//********2********之后添加适当的语句。
(3)定义函数体为空的析构函数。请在注释//********3********之后添加适当的语句。
(4)在main()函数中定义CRect类的实例rect2,并把rect1的值赋给rect2。请在注释//********4********之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
1 #include
2 class CRect
3 {
4 private:
5 //********1********
6
7 public:
8 //********2********
9
10 //********3********
11
12 void SetPointS(double,
double,double,double);
13 void SetLeftPoint(double m)
{leftPoint=m;)
14 void SetRightPoint(double m)
{rightPoint=m;)
15 void SetToppoint(double m)
{topPoint=mj)
16 void SetBottomPoint
(double m){bottomPoint=m;)
17 void Display();
18 };
19
20 CRect::CRect(double l,doublet,double r,double b)
21 {
22 leftPoint=1 ; topPoint=t;
23 rightPoint=r ; bottompoint=b ;
24 }
25 void CRect::SetPoints(double
1,double t,double r,double b)
26 {
27 leftPoint=1 ; topPoint=t ;
28 rightPoint=r;bottomPoint
=b ;
29 }
30 void CRect::Display()
31 {
32 cout(<”left-top point is
("<
")"<<’\n’;
33 cout<<"right-bottom point is
("<
nt<<")"<<’\n’;
34 )
35 void main(){
36 CRect rect0 ;
37 rect0.Display();
38 rect0.SetPoints(20,20.6,30,
40);
39 rect 0.Display();
40 CRect rectl(0,0,150,150);
41 rectl.SetTopPoint(10.5);
42 rectl.SetLeftPoint(10.5);
43 //********4********
44
45 rect2.Display();
46 }
选项
答案
(1)添加语句:double leftPoint,topPoint,rightpoint, bottompoint ; (2)添加语句:CRect(double leftPoint=0,double topPoint=0,double righ七point=0,double bottomPoint=0); (3)添加语句:~CRect()f); (4)添加语句:CRect rect2(rectl);
解析
程序中定义了一个表示矩形的类CRect,该类中定义了私有数据成员leflPoint、topPoint、rightPoint、bottomPoint,分别用于表示矩形左上角及右下角的点的坐标且它们的数据类型都是double型,类CRect有多个成员函数,SetPoints0,SetLeftPoint()函数可改变成员变量leflPoint的值,而SetRightPoint()成员函数可改变rightPoint的值,SetTopPoint()可改变topPoint的值,SetBottomPoint()改变bottomPoint的值,Display()成员函数显示成员变量的值。
[解题思路]
(1)第1个标识下完成私有数据成员leflPoint、topPoint、rightPoint、bottomPoint的定义,均为double型的变量,故第1个标识下应添加“double leftPoint,topPoint,rightPoint,bottomPoint;”。
(2)构造函数完成成员变量的初始化,类CRect的默认构造函数并初始化double型私有数据成员leflPoint、topPoint、rightPoint、bottomPoint为0,故第2个标识下应添加“CRect(double leftPoint=0,double topPoint=0,double rightPoint=0,double bottomPoint=0);”。
(3)析构函数名和类名一致,并在前面加“~”以和构造函数区别,该析构函数体为空,故第3个标识下应添加“~CRect0{};”,虽然该函数体为空,但是“{}”必须保留。
(4)主函数中类CRect的对象rect2是通过复制构造函数将rectl的值赋值给它实现初始化的,而rectl的初始化直接调用自定义构造函数,第4个标识下应添加“CReclrect2(rectl);”。
转载请注明原文地址:https://www.kaotiyun.com/show/8PNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
要在屏幕上显示“Hello,world!”应执行语句cout<<【】。
若结构Arith中有一成员定义为char*op;,另有结构指针p定义为Arith*p=newArith.,则要访问p所指对象中的。p成员所指向的对象,应使用表达式【】。
下面四个选项不属于表达式语句的是______。
设有关系模式R(A,B,C,D,E,P),其函数依赖集为{E→D,C→B,(C,E)→F,B→A},则R最高达到______。
【】是一种特殊的成员函数,户主要用来为对象分配内存空间,对类的数据成员进行初始化并执行对象的其他内部管理操作。
假定n=3,,下列程序的运行结果是()。#include<iostream.h>intFun(intm)voidmain(){cout<<"Pleaseinputanumber:";int
有如下程序:#inchde<iostream.h>voidfun(int&x,inty){intt=x;x=y;y=t;}intmain(){inta[2]={23,42);fun(a[1
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言是______。
函数模板______。
在关系数据库中,用来表示实体之间联系的是
随机试题
下述哪项对诊断妊娠期甲亢无帮助
支气管哮喘长期反复发作,最常见的并发症是
AB型血的人红细胞膜上和血清中分别含
出现瘀血证时,面部颜色可见水湿内停时,面部颜色可见
商业地产项目的招商代理主要的工作原则包括()。
硬化混凝土的强度主要取决于混凝土的水灰比。在一定范围内,()。
下列各项中,关于原始凭证的说法,正确的有()。
借款人须提供贷款人认可的财产抵押、质押或第三方保证。下列各项中,()可以作为留学贷款的借款人所提供的质押品。
王某犯出售伪造的增值税专用发票罪被判处有期徒刑10年,刑罚执行2年后,发现他在判决宣告以前还犯有抢劫罪,新发现的抢劫罪被判处有期徒刑15年,根据《刑法》规定的数罪并罚原则,对王某还应执行的刑期最低为()。
下列关于固定资产的说法,错误的是()。
最新回复
(
0
)