题目描述
入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。
输入
输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。
输出
对于每组输入数据,输出一行,结果保留两位小数。
样例输入
0 0 0 1
0 1 1 0
样例输出
1.00
1.41
思路:
这个题就没什么难度,用两点之间的距离公式求距离,并且保留两位小数,注意一下输出格式。唯一需要注意的一点是多组数据怎么处理,用循环的话什么时候终止循环呢,这时候就可以把循环的终止条件变为输入为空时终止循环,具体的代码可以看下面的。
代码:
#include<stdio.h>
#include<math.h>//注意引一下头文件
int main()
{
double x1,x2,y1,y2;
double distance=0;
while(scanf("%lf %lf %lf %lf",&x1,&y1,&x2,&y2)!=EOF)//没有输入时结束循环
{
double a,b;
a=pow((x1-x2),2);//pow函数进行求(x1-x2)的2次方
b=pow((y1-y2),2);
distance=sqrt(a+b);//sqrt函数进行开根号
printf("%.2f\n",distance);
}
return 0;
}