首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释//***
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释//***
admin
2017-03-22
68
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释//********1********后添加适当的语句。
(2)完成类CRectangle的构造函数,给pointl和point2进行赋值。请在注释//********2********后添加适当的语句。
(3)完成类CRectangle的函数GetArea0,用来计算矩形面积。请在注释//********3********后添加适当的语句。
(4)定义CRectangle类,拥有两个私有对象pointl和point2,类型为Point,请在注释//********4********后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include
#include
Class CPoint
{
public:
//********1********
{
x=i;
y=j;
}
int GetX()
{
return x;
}
int GetY()
{
return y;
}
private:
int x,y;
};
class CRectangle
{
public:
//********2********
{
}
int GetArea()
{
//********3********
int height=pointl.GetY()
-point2.GetY();
return(width*height)?
width*height:一width*height;
}
int GetGirth()
{
int width=abs(point1.
GetX()-point2.GetX());
int height=abs(point1.
GetY()-point2.GetY());
return(2*(width+height));
}
private:
//********4********
CPoint point2;
};
int main()
{
CRectangle rect(5,2,13,18);
cout<
cout<
return 0;
}
选项
答案
(1)添加语句:CPoint(int i=0,int j=0) (2)添加语句:CRectangle(int top,int left,int,right,int bottom):pointl(top,left),point2 (right,bottom) (3)添加语句:int width=pointl.GetX() -point2.GetX(); (4)添加语句:CPoint pointl;
解析
(1)在第1个标识下添加构造函数定义,该构造带有两个参数x和y的构造函数,x、y都为int型,缺省值为0,因此第1个标识下应添加CPoint(int i=0,int j=0)。
(2)第2个标识下通过Cpoint类的构造函数来完成Crectangle类成员的初始化,在函数体内没有任何函数语句,因此其初始化过程是在初始化列表里完成的,通过调用基类的构造函数来实现两个私有对象point1和point2的初始化,故第2个标识下应添加CRectangle(int top,int left,int right,int bottom):pointl(top,left),point2(right,bottom)。
(3)面积为矩形的长宽之积,因此先计算矩形的长和宽,可由两个Cpoint对象的x坐标相减计算得到,CPoint对象的X坐标为私有成员,只能通过公有接口函数调用获得,因此第3个标识下为“int width=pointl.GetX()-point2.GetX0;”。
(4)Crectangle类的成员变量为两个Cpoint对象成员pointl和point2,第4个标识下补充pointl的定义,故第4个标识下应添加“CPoint pointl;”。
转载请注明原文地址:https://kaotiyun.com/show/vnAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的执行结果是#include"iostream.h"voidmain(){int*p,r;p=newint;*p=20;r=s
利用继承能够实现【】。这种实现缩短了程序的开发时间,促使开发人员复用已经测试和调试好的高质量软件。
有以下程序:#include<iostream>usingnamespacestd;intmain(){intm[5],n[5],*px,*py,k;px=m;py=n
若有以下程序#include<iostream>usingnamespacestd;classA{private:inta;public:
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为上【】。
判断char型变量c是否为小写字母的正确表达式是
有如下类定义:classSample{public:Sample();~Sample();private:staticintdata;};将静态数据成员data初始化为0的语句是【】。
有如下模板声明:templateclassA;下列声明中,与上述声明不等价的是
下列关于运算符函数的描述中,错误的是
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3;int*v4;};其中有一个成员变量的定义是错误的,这个变量是
随机试题
配平下列反应式:FeSO4+HNO3+H2SO4Fe2(SO4)3+NO+H2O,下列答案中系数自左到右正确的是()。
下列可使氧离曲线右移的条件是()
一位患有肺炎杆菌(克雷伯杆菌肺炎)肺炎的病人,其具有特征性的临床表现是
患儿生后3天,形体瘦小,全身冰冷,僵卧少动,气息微弱,哭声无力,全身皮肤板硬,苍白肿亮,唇舌淡白。治疗应首选( )。
为了提高光学仪器的分辨本领,通常可以采用的措施有:
用电计量装置原则上应安装在供电设施的()。
加强社会治理制度建设,完善党委领导、政府负责、社会协同、公众参与、法治保障的社会治理体制,提高社会治理社会化、法治化、()、专业化水平。
在下面的操作系统中,(59)不能直接用来建立对等结构的局域网。
Probablyforaslongastherehavebeensalesforces,managershavesoughtwaystodeterminewhethertheyareeffectiveornot.
MywifeandIspenttwoweeksinLondonlastyear.Wewentthereinthe【11】WethinkitisthebestseasontovisitEngland.The
最新回复
(
0
)