请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程文件pmj3,此工程中包含一个源程序文件pmj3.epp,其中定义了用于表示平面坐标系中的点的类My-Point和表示线段的类MyLine;程序应当显示: (0,0)(1,1) 1.41421,

admin2015-06-27  12

问题 请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程文件pmj3,此工程中包含一个源程序文件pmj3.epp,其中定义了用于表示平面坐标系中的点的类My-Point和表示线段的类MyLine;程序应当显示:
(0,0)(1,1)
1.41421,1
但程序中有缺失部分,请按照以下提示,把缺失部分补充完整:
(1)在“//**1******found****”的下方是构造函数的定义,它用参数提供的两个端点对pointl和point2进行初始化。
(2)在“//**2******found****”的下方是成员函数length的定义,返回线段的长度。
(3)在“//**3****found****”的下方是成员函数s1ope的定义中的一条语句。
函数s1ope返回线段的斜率,方法是:若线段的两个端点分别是(x1,y1)和(x2,x2),则斜率k为:

注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“****found****”。
//proj3.cpp
#include
#include
usingnamespacestd;
classNyPoint{//表示平面坐标系中的点的类
doublex;
doubley;
public:
lyPoint(doublex,cloubley)
{this->x=x;this->y=y;}
doublegetX()const{returnx;)
doublegetY()const{returny;}
voidshow()consttcout<<’(’<};
classNyLine{//表示线段的类
NyPointpoint1;
NyPointpoint2;
public:
NyLine(NyPointp1,NyPointp2);
NyPointendPointl()const{return
point1;)//返回端点1
NyPointendPoint2()const{return
point2;}//返回端点2
double:Length()const;//返回线段的长度
doubles1ope()const;//返回直线的斜率
};
//**1************found**********
NyLine::NyLine(NyPointp1,NyPointp2):________{}
//**2************found**********
doubleNyLine::________
{
returnsqrt((point1.getX()-
point2.getX())*(point1.getX()-
point2.getX())+(point1.getY()-
point2.getY())*(point1.getY()-
point2.getY()));
}
doubleNyLine::s1ope()const
{//**3************found**********
return(________)/(point2.
getX()-point1.getX());
}
intmain()
{
NyLineline(NyPoint(0,0),NyPoint
(1,1));
line.enclPointl().show();
line.endPoint2().show();
cout<return0;
}

选项

答案(1)point1(p1), point2(p2) (2)length()const (3)point2.getY() - point1.getY()

解析 (1)主要考查考生对构造函数的掌握,这里使用成员列表初始化给point1和point2赋初始值。
(2)主要考查考生对成员函数的掌握,由类的定义中函数的声明:double length()const; //返回线段的长度,可知这里要输入length()const。
(3)主要考查考生对成员函数的掌握,由函数声明:double slope()const; //返回直线的斜率,可知返回语句要返回直线的斜率,因此要输入:point2.getY() - point1.getY(     )。
转载请注明原文地址:https://jikaoti.com/ti/aXXiFFFM
0

最新回复(0)