首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释//*******
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能: (1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释//*******
admin
2019-06-05
61
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。完成以下功能:
(1)定义类CPoint的带有两个参数的构造函数,两个变量为x、y都为int型,且缺省值为0。请在注释//********1********后添加适当的语句。
(2)完成类CRectangle的构造函数,给point1和point2进行赋值。请在注释//********2********后添加适当的语句。
(3)完成类CRectangle的函数GetArea(),用来计算矩形面积。请在注释//********3********后添加适当的语句。
(4)定义CRectangle类,拥有两个私有对象point1和point2,类型为Point,请在注释//********4********后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
#include<iostream.h>
#include<cmath>
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=point1.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<<rect.GetArea()<<endl;
cout<<rect.GetGirth()<<endl;
return0;
}
选项
答案
(1)添加语句:CPoint(int i=0,int j=0) (2)添加语句:CRectangle(int top,int left,int right,int bottom):point1(top,left),point2(right,bottom) (3)添加语句:int width=point1.GetX()-point2.GetX(); (4)添加语句:CPoint point1;
解析
(1)在第1个标识下添加构造函数定义,该构造带有两个参数x和y的构造函数,x、y都为int型,缺省值为0,因此第1个标识下应添加CPoint(int i=0,int j0)。
(2)第2个标识下通过Cpoint类的构造函数来完成Crectangle类成员的初始化,在函数体内没有任何函数语句,因此其初始化过程是在初始化列表里完成的,通过调用基类的构造函数来实现两个私有对象point1和point2的初始化,故第2个标识下应添加CRectangle(int top,int left,int right,int bottom):point1(top,left),point2(right,bottom)。
(3)面积为矩形的长宽之积,因此先计算矩形的长和宽,可由两个Cpoint对象的x坐标相减计算得到,CPoint对象的x坐标为私有成员,只能通过公有接口函数调用获得,因此第3个标识下为“int width=point1.GetX()-point2.GetX();”。
(4)Crectangle类的成员变量为两个Cpoint对象成员point1和point2,第4个标识下补充point1的定义,故第4个标识下应添加“CPoint point1;”。
转载请注明原文地址:https://www.kaotiyun.com/show/318p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
在每个C++程序中必须有且仅有一个()。A)函数B)主函数C)预处理指令D)语句
设程序如下:#include<iostream>usingnamespacestd;intmain(){int**p,*q,r=10;q=&r;p=&q;cout<<**p+1<<en
有如下类声明:classTestClass{intn;public:TestClass(inti=0):n(i){}voidsetValue(intn0);};
下列工具中,不属于结构化分析的常用工具的是()。A)PAD图B)数据字典C)判定树D)数据流图
下列关于栈的叙述中,正确的选项是()。A)在栈中只能删除数据B)在栈中只能插入数据C)栈是先进先出的线性表D)栈是先进后出的线性表
A、 B、 C、 D、 B常用的软件结构设计工具是结构图,也称程序结构图。DFD图(数据流图)是以图形的方式描述数据在系统中流动和处理的过程,只反映系统必须完成的逻辑功能,它是需求分析阶段的图形工具。盒式图(
下列程序的输出结果为012,请根据注释将横线处的缺失部分补充完整。#include<iostream>usingnamespacestd;classTest{public:Test(intA){data=a
下列关于函数模板的描述中,正确的是()。A)函数模板是一个实例函数B)使用函数模板定义的函数没有返回类型C)函数模板的类型参数与函数的参数相同D)通过使用不同的类型参数,可以从函数模板得到不同的实例函数
已知类Ben中将二元运算符“/”,重载为友元函数,若c1、c2是Ben的两个对象当使用运算符函数进行显式调用时,与表达式c1/c2等价的表示为______。
有如下程序:#include<iostream>usingnamespacestd;classSac{intn;public:Sac():n(4){cout<<n;}Sac(intk):n(
随机试题
利用并行接口芯片8255A的PA口采集8个开关量:K0一K7开关状态,该PB口输出给8个发光二极管,开关状态0不发光,1状态发光,8255A的端口地址为90H一93H,完成程序,画出框图。
人体铁的吸收部位主要在
以下哪项不属于社区健康档案的内容
合成洗涤剂引起的主要环境问题是
在发行申请通过发审会后、申请文件封卷前,保荐人在持续尽职调查的基础上向中国证监会出具专业意见,就发审会审核后是否发生重大事项发表意见,同时应督促相关中介机构就发审会审核后是否发生重大事项发表专业意见。()
如果企业面对的市场上存在大量的价格敏感用户,企业较适合采用的战略是()。
幻想是()的一种特殊形式。
(2009上软评)软件测试的基本方法包括白盒测试和黑盒测试方法,以下关于二者之间关联的叙述,错误的是______。
Readthearticlebelowaboutacompanythatsellshouseholdproducts.ChoosethebestwordtofilleachgapfromA,B,Cor
Israeliarchaeologistshavediscoveredhumanremainsdatingfrom400,000yearsago,(1)______conventionalwisdomthatHomosapie
最新回复
(
0
)