公式:
如果点A(x1,y1)、点B(x2,y2)则AB的距离为
∣AB∣=√[(x1-x2)2+(y1-y2)2]
代码:
#include<stdio.h>
#include<math.h>
int main()
{
int x1,y1,x2,y2,x3,y3; //任意三点坐标
double lenght1,lenght2,lenght3; //三角形的各三边长度
int high; //三角形的高
scanf("%d %d %d %d %d %d",&x1,&y1,&x2,&y2,&x3,&y3); //输入3个点的坐标
lenght1 = sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
lenght2 = sqrt((x2-x3)*(x2-x3)+(y2-y3)*(y2-y3));
lenght3 = sqrt((x3-x1)*(x3-x1)+(y3-y1)*(y3-y1));
//printf("%lf\n%lf\n%lf\n",lenght1,lenght2,lenght3); 调试用的,观察数据
if( (lenght1+lenght2)>lenght3 && (lenght1+lenght3)>lenght2 && (lenght2+lenght3)>lenght1 && (lenght1-lenght2)<lenght3 && (lenght1-lenght3)<lenght2 && (lenght2-lenght3)<lenght1)
//上面这个是判断是否构成三角形条件的决定性因素
{
printf("L = %.2lf",lenght1+lenght2+lenght3); // 若构成三角形
}
else
{
printf("Impossible\n"); // 若不构成三角形,输出Impossible
}
return 0;
}
转载自原文链接, 如需删除请联系管理员。
原文链接:C语言 — 两点间的距离公式,转载请注明来源!