首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)把类CDistance定义为类CPoi
使用VC6打开考生文件夹下的源程序文件modi3.cpp,通过把类Distance定义为类Point的友元类,来实现计算两点之间距离的功能。其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。 (1)把类CDistance定义为类CPoi
admin
2020-06-29
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));
解析
(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://kaotiyun.com/show/QIyp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下类定义:classMyClass{public:MyClass(doubled=0.0):val(d){}______________/
下列有关类成员的叙述中,正确的是()。
有如下类定义:classB{public:voidfun1(){}private:voidfun2(){}protected:voidfun3(
有如下类定义:classPoint{public:voidSetX(intxx){x=xx;}voidSetY(intyy){y=yy;}
在公有继承的情况下,允许派生类中新定义的成员函数直接访问的基类成员只包括
下列有关继承和派生的表述中,正确的是
下列关于运算符函数的表述中,错误的是
下面属于白盒测试方法的是
若要对类Value中重载的类型转换运算符long进行声明,下列选项中正确的是
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。
随机试题
教育目的的价值取向:指教育目的的提出者或从事教育活动的主体依据自身的()对教育()作出选择时所持有的一种倾向。其包括()种,分别是:()本位论和()本位论。
机体内存在的功能性调节是
下列哪项不符合甲型血友病的检查结果
机械通风系统,当进、排风口在同侧时,排风口宜高于进风口(),进、排风口在同侧同一高度时,其水平距离不宜小于()。
某污水处理厂生化系统剩余污泥量为150m3/d,含水率99%,经浓缩后含水率降至97%,浓缩后的污泥量为()。
估算建设投资后需编制建设投资估算表,为后期的融资决策提供依据。按形成资产法分类,建设投资可分为()。【2009年真题】
下列所得,属于个人所得税“工资、薪金所得”应税项目的有()。
商品的二因素是______和______。
某社区属于“三不管”地带,是一个城中村。该社区由于房租便宜,于是成了很多外来务工人员的临时落脚点。该社区大部分原居民已经搬迁,留下的是一些贫困家庭或者老年人。目前,该社区人口比较复杂,“劳释”人员比较多,社区环境脏乱差,乱搭乱建等各种违章建筑也很多,黄赌毒
A、Highschoolstudentswhogiveupcollege.B、Uneducatedmenwithlowerincome.C、Peopleagedfrom24to44.D、Teenagersfromsi
最新回复
(
0
)