题目
题目
Problem Description
输入两点坐标(X1,Y1),(X2,Y2),计算并输出两点间的距离。
Input
输入数据有多组,每组占一行,由4个实数组成,分别表示x1,y1,x2,y2,数据之间用空格隔开。
Output
对于每组输入数据,输出一行,结果保留两位小数。
Sample Input
0 0 0 1
0 1 1 0
Sample Output
1.00
1.41
Author
代码
#include
#include
int main ()
{
double x1,x2,y1,y2,distance;
while(~scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2))
{
distance=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
printf("%.2lf\n",distance);
}
return ;
}
个人见解
1.首先定义double型,因为坐标可以含小数
2.然后在头文件定义一个数学函数库,定义之后便可以使用一系列的数学函数,(.h结尾一般称为头文件)
3.最后是小数点的问题,double在不做任何强调之下默认小数点后6位,题目中强调保留2位小数,只需%.2f 即可;
附加:%m.nf
m:指的是包括小数点在内字符的宽度;
n:表示后面小数点的位数;
举例:
printf(“%4.2f”, 2.8 ); //答案 2.80
printf(“%4.2f”, 8.916 );答案8.92
不足位数右对齐,左补空格