A-A+

下面程序的输出结果是()。 #include<iostream> #include<math

2022-08-05 22:58:06 问答库 阅读 173 次

问题详情

下面程序的输出结果是()。 #include<iostream> #include<math.h> using namespace std; class point { private: double x; double y; public: point(double a,double b) { x=a; y=b; } friend double distances(point a,point b); }; double distances(point a,point b) { return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)); } int main() { point p1(1,2); point p2(5,2); cout<<distances(p1,p2)<<end1; return 0; }
A.2
B.4
C.8
D.16请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:B
解析:分析题目,此题最终要实现的结果是sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y)),其中的a.x和a.y分别指p1(1,2)中的1和2。这样容易得到结果是(1-5)*(1-5)+(2-2)*(2-2)=16,再开方得到结果为4。

考点:程序