❶ 編程序:已知三維空間中的一個點坐標(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;}