描述
由键盘输入n(n<50)个点的坐标x,y(x,y<1000,浮点数),计算出最近两个点的距离。(保留三位小数)
输入格式
输入第一个整数为有n个点,此后分别为n个的坐标x y
输入样例
3 0 0 1 2 2 2
输出样例
1.000
#include "stdio.h"
#include <math.h>int main()
{
int n,i,j;
scanf("%d",&n);
double len,minlen,x[n],y[n];
for (i=0;i<n;i++)
{
scanf("%lf",&x[i]);
scanf("%lf",&y[i]);
}
minlen = sqrt(pow((x[0]-x[1]),2) + pow((y[0]-y[1]),2));
for (i=0;i<n;i++)
{
for (j=0;j<n&&i!=j;j++)
{
len = sqrt(pow((x[i]-x[j]),2)+ pow((y[i]-y[j]),2));
if (len<minlen)
minlen = len;
}
}
printf("%.3lf",minlen);
return 0;
}