首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)把类CDistance定义为类CPoi
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)把类CDistance定义为类CPoi
admin
2020-06-29
45
问题
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。
(1)把类CDistance定义为类CPoint的友元类。请在注释//********1********之后添加适当的语句。
(2)定义类CPoint的构造函数,完成给私有数据成员x和y的赋值,并且两个参数的缺省值都为0。请在注释//********2********之后添加适当的语句。
(3)完成类CDistance的成员函数length(Point&pPoint,Point&qPoint)的定义,并在其中计算点p、q之间的距离,并且返回结果。假设两点之间的距离distance=sqrt((pPoint.x-qPoint.x)*(pPoint.x-qPoint.x)+(pPoint.y-qPoint.y)*(pPoint.y-qPoint.y))。请在注释//********3********之后添加适当的语句。
注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。
#include
#include
using namespace std;
class CPoint
{
public:
//********1********
//定义类Point的构造函数
//********2********
void display() { cout<<
"x="<
<
private:
float x,y;
};
Class CDistance
{
public:
float length(CPoint&p,
CPoint &q);
};
float CDistance::length
(CPoint&pPoint,CPoint&qPoint)
{
//********3********
}
int main()
{
CPoint mPoint(10,10),
nPoint(40,50);
mPoint.display();
nPoint.display();
CDistance len;
cout<
nPoint)<
return 0;
}
选项
答案
(1)添加语句:friend class CDistance; (2)添加语句:CPoint(float a=0,float b=0){x=a;y=b;} (3)添加语句:return sqrt((pPoint.x-qPoint.x)*(pPoint.x-qPoint.x)+(pPoint.y-qPoint.y)*(pPoint.y-qPoint.y));
解析
(1)第1个标识下补充定义类CDistance为类CPoint的友元类,声明友元类的格式为:friend<类名>;,故第1个标识下应添加“friend class CDistance;”。
(2)类CPoint的构造函数完成给私有数据成员x和Y的初始化,两个参数的缺省值都为0,因此参数含有默认值0,故第2个标识下应添加“CPoint(float a=0,float b=0){x=a;y=b;}”。
(3)类CDistance的成员函数length(CPoint &pPoint,CPoint&qPoint)返回点p、q之间的距离,可由公式distance=sqrt((pPoint.x-qPoint.x)*(pPoint.x-qPoint.x)+(pPoint.y-qPoint.y)*(pPoint.y-qPoint.y))计算求得,第3个标识下应添加“return sqrt((pPoint.X—qPoint.x)* (pPoint.x-qPoint.x)+(pPoint.y-qPoint.y)*(pPoint.y-qPoint.y));”。
转载请注明原文地址:https://jikaoti.com/ti/6kl0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classCup{public:Cup(doubleval,stringcr="red"):price(val),color(cr){}//①~
有三个关系R、S和T如下:则由关系R和S得到关系T的操作是
若有如下类声明:classMyClass{public:MyClass(){cout
某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( )。
下列语句中错误的是
有如下类定义:classPoint{public:voidSetX(intxx){x=xx;}voidSetY(intyy){y=yy;}
下面对软件特点描述错误的是
在软件开发中,需求分析阶段产生的主要文档是( )。
某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( )。
某二叉树共有845个结点,其中叶子结点有45个,则度为1的结点数为
随机试题
有肾功能不良的高血压患者宜选用
风湿热患儿的热型一般为
A.甲胎蛋白(AFP)阳性B.癌胚抗原(CEA)阳性C.尿中本.周(Bence-Jones)蛋白定性试验阳性D.降钙素升高E.尿中17-羟类固醇明显升高结肠癌可出现
A.α1受体B.α2受体C.β1受体D.β2受体E.β3受体激活后能促进脂肪分解代谢的受体是
代谢综合征的临床特征主要有
下列不属于现金流动性分析指标的是()。
长江公司为上市公司,2016—2017年度发生如下业务:1.2016年1月1日,长江公司以发行股份的方式取得非关联公司——黄河公司40%的股权。发行的普通股数量为200万股,面值为1元,发行价为12元,另发生发行费用40万元。取得股权当日,黄河公司所有者
根据我国《价格法》及相关规章的规定,经营者进行价格活动,享有的权利包括()。
某企业于2×16年1月1日从银行取得一笔专门借款600万元用于固定资产的建造,年利率为8%,期限为两年。至2×17年1月1日该固定资产建造已发生资产支出600万元,该企业于2×17年1月1日从银行另取得一笔1年期一般借款300万元,年利率为6%,借入款项
若X和Y两产品的交叉弹性是-2.3,则()。
最新回复
(
0
)