首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)把类CDistance定义为类CPoi
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)把类CDistance定义为类CPoi
admin
2017-09-20
59
问题
使用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));
解析
程序当中定义了类CPoint和CDistance,CPoint类含有成员变量x和y,display()函数输出x和y的值;类CDistance只有成员函数length(CPoint&p,CPoint&q),且类CDistance为类CPoint的友元类。
转载请注明原文地址:https://kaotiyun.com/show/YUAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
字符串通常采用的两种存储方式是( )。
假定要动态分配一个类型为Worker的具有n个元素的数组,并由r指向这个动态数组,则使用的语句是【 】。
设有以下类的定义: class Ex { int x; public: void setx(int t=0); }; 若在类外定义成员函数setx(),以下定义形式中正确的是
以下程序运行后,输出结果是 #define PT 5.5 #define S(x)PT* x * x main() {int a=1,b=2; printf("%4.lf\n",S(a+b); }
设有如图所示的二叉树则对该二叉树前序遍历的结果是
有如下类声明;classSAMPLE{intn;public:SAMPLE(inti=0):n(i){}voidsetValue(intn0);}
非成员函数只有在声明为(),才能访问这个类的所有private成员。
下列叙述中错误的是()。
有如下的类模板定义:template<typenameTYPE>classMyClass{TYPEn;public:MyClass(TYPEk);};其中构造函数MyClass用的值初始化
下列程序的运行结果是()。#include< iostream.h>voidfun(int*a,int*b){int*kk=a;a=b;b=k}voidmain(){inta=2004,
随机试题
甲欲从某市调回原籍工作,遂让其父乙购买一套住房,乙的行为是()
提出“内伤脾胃,百病由生”论点的医家是
不符合结核性脑膜炎患者脑脊液检查结果的是
A.抗甲状腺药物联合甲状腺制剂、免疫抑制剂、球后放射治疗B.眼征阳性C.局部用药、眼罩、利尿、限盐等D.视力减退、眼肌麻痹、复视E.以上都是非浸润性突眼
下列药物中哪个不能发生水解反应
患者,女性,48岁。主诉阴道分泌物增多,呈稀薄泡沫状,外阴瘙痒,伴烧灼感、疼痛。妇科检查:阴道黏膜充血,白带呈灰白色泡沫状。选用的局部冲洗液是
工程项目管理学研究的对象包括()。
下列关于聚乙烯(PE)燃气管道的连接,叙述正确的是()。
KarenPagebravedpre-dawndarknessandfreezingtemperaturesyesterdaytofacedownasceneof"organizedchaos".Hundreds
AccordingtotheUNHumanDevelopmentReport,whichisthebestplaceforwomenintheworld?
最新回复
(
0
)