❶ 编程序:已知三维空间中的一个点坐标(x,y,z),求该点到原点的距离
三维空间距离公式是√[(x1-x2)^2+(y1-y2)^2+(z1-z2)^2]
那么任意一点到原点距离公式d = √(x^2+y^2+z^2)
这边是Java的代码,其他的也差不多是这样。
假设已存在已知变量double x, y, z
代码如下
double sum = x*x + y*y + z*z;
double distance = Math.pow(sum, 2);
谢谢!
❷ c语言求圆心到点的距离
答案并没有计算错误。
你的程序中计算的d1~d4,分别是点到四个圆心的距离的平方。当点到圆心的距离大于1时,自然距离的平方也是大于1的。所以在这个特殊的问题中,不再求平方根也是可以的。
❸ 如何用C语言计算两点之间距离
用C语言计算两点之间距离的参考代码:
#include <stdio.h>
#include <stdlib.h>
#include "math.h"
typedef struct point {
double x;
double y;
}point;
point array[30001];
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;i<n;i++){
scanf("%f %f",&array[i].x,&array[i].y);
}
for(i = 0;i<n;i++){
//printf("%d %d ",array[i].x,array[i].y);
//printf("dis:%.2f ",distance(array[0],array[i]));
}
maxdis = 0.0;
for(i = 0;i<n;i++){
for(j = i;j<n;j++){
if(distance((array[i]),(array[j])) > maxdis ){
//printf("maxdis = :%.2f ",distance((array[i]),(array[j])));
maxdis =distance((array[i]),(array[j]));
}
}
}
printf("%.2f",maxdis);
}
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) );
}
(3)c语言编写点到原点的距离扩展阅读:
C语言编写注意事项:
1、所有自定义变量必须声明才能使用。
2、每行只书写一条语句, 在运算符两边加上一个空格, 便于阅读。
3、整数除法将自动舍位, 不会进行四舍五入的操作。
4、for(初始化部分;条件部分;增长部分) - 比while 更适用于初始化和增长步长都是单条语句情况下。
5、使用#define 名字 替换文本 对部分"幻数" 赋予意义便于阅读 #define结尾不需要“;”号结束。
❹ c语言编程题:已知三维空间中的一个点坐标(x,y,z)求该点到原点的距离
float distance(float x, float y, float z)
{
return sqtr(x*x + y*y + z*z);
}
❺ 在c语言中实现输入直角坐标系中任意一个点的坐标,实现输出该点到原点坐标的
摘要 亲,您好,为您查询到:#include
❻ 以下c语言程序,求一点到原点的距离,哪有问题
你的结构体m没有赋值,需要添加赋值代码,或者改下函数的传参方式,下面两个截图是两种改正方式:
修改函数传参方式
❼ c语言:输入10个点的坐标(设坐标为整数值),输出距原点最远的点(设唯一)的坐标及该点距原点的距离
#include#includeintmain(){intx1,y1,x2,y2,absx,absy;doubleres;printf("Pleaseinputthefirstpoint(x,y):\n");scanf("%d%d",&x1,&y1);printf("Pleaseinputthesecondpoint(x,y):\n");scanf("%d%d",&x2,&y2);printf("\nfirstpoint:(%d,%d),secondpoint:(%d,%d)\n",x1,y1,x2,y2);absx=abs(x2-x1);absy=abs(y2-y1);//printf("%d%d",absx,absy);res=sqrt((absx*absx)+(absy)*(absy));printf("\nthelenoflineis=%lf\n",res);getch();return0;}