你这个题的数据量很小(n10),所以完全可以暴力求解
#include?stdio.h
#include?math.h
typedef?struct?point
{
double?x,?y,?z;
}Point;
double?GetDistance(const?Point?*a,?const?Point?*b)
return?sqrt(?(a-x-b-x)*(a-x-b-x)+
(a-y-b-y)*(a-y-b-y)+
(a-z-b-z)*(a-z-b-z)?);
}
int?main()
int?i,?j,?n;
Point?p[10];
double?res?=?0,?distance?=?0;
scanf("%d",?n);?
for(i?=?0;?i?n;?i++)
scanf("%lf?%lf?%lf",?p[i].x,?p[i].y,?p[i].z);
for(i?=?0;?i?n-1;?i++)
for(j?=?i+1;?j?n;?j++)
distance?=?GetDistance(p[i],?p[j]);
res?=?distanceres?distance:res;
return?0;
#include math.h
#include stdio.h
void main()
float d;
扩展资料:
c语言的基本运算的注意事项
第一段:运算顺序
①.、算术表达式
优先级越高,就越先进行运算,当优先级相同时,参照结合方向.下面是算术运算符的优先级排序:
负值运算符(-)?乘(*)、除(/)、模(%)运算符?加(+)、减(-)运算符
如果需要先计算优先级低的可以使用小括号()括住,小括号的优先级是最高的!
第二段:关系运算符的使用注意
①.、关系运算符中==、!=的优先级相等,、=、、=的优先级相等,且前者的优先级低于后者
用C语言计算两点之间距离的参考代码:
#include stdlib.h
#include "math.h"
typedef struct point {
double x;
double y;
}point;
double distance(point a,point b);
int main(int argc, char *argv[])
while(1){
int n,i,j,count;
double maxdis,temp;
scanf("%d",n);
for(i = 0;in;i++){
? ? scanf("%f %f",array[i].x,array[i].y);? ?
? ? //printf("%d %d\n",array[i].x,array[i].y);
maxdis = 0.0;
? ? for(j = i;jn;j++){
? ? ? ? if(distance((array[i]),(array[j])) maxdis ){
? ? ? ? ? ? maxdis =distance((array[i]),(array[j]));
? ? ? ? }
? ? }
system("pause");
return 0;
//计算x y之间距离
double distance(point a,point b){
return sqrt(? ? (a.x - b.x)*(a.x - b.x)? +? ?(a.y -b.y)*(a.y -b.y)? );
C语言编写注意事项:
①.、所有自定义变量?必须声明才能使用.
#includelt;stdio.hgt;
#includelt;math.hgt;
printf("请输入一组数据:");
c语言基本运算
一:算术运算符
算术运算符非常地简单,就是小学数学里面的一些加减乘除操作.不过呢,还是有一些语法细节需要注意的.
第一段:加法运算符+
int a=10;
(此处空一行)
第二段:减法运算符或负值运算符-
int a=-10;
第三段:乘法运算符*
第四段:除法运算符/
printf("a=%f,b=%f\n",a,b);
注意:除法运算符并不是/,而是一个正斜杠/
改下flength函数:
float length;
return length;
以上就是土嘎嘎小编为大家整理的c语言中求距离的函数相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!