C語言求空間兩點之間的距離
定義一個表示三維空間點坐標的結構類型,通過函數(shù)求空間上任意兩點之間的距離。
算法思想
空間內任意點的坐標有三個,分別為 x 軸方向、y 軸方向、z 軸方向,設定結構體 point,包括三個成員 x、y、z,都為雙精度類型。
定義一個函數(shù) dist 用于計算空間上兩點的距離,函數(shù)返回值也為 double 類型,函數(shù)的參數(shù)為結構體 point 的兩個變量。
程序代碼
#include <stdio.h>
#include <math.h>
struct point
{
float x;
float y;
float z;
};
float dist(struct point p1,struct point p2)
{
float x,y,z;
float d;
x=fabs(p1.x-p2.x);
y=fabs(p1.y-p2.y);
z=fabs(p1.z-p2.z);
d=sqrt(x*x+y*y+z*z);
return d;
}
int main()
{
struct point p1,p2;
printf("Enter point1:");
scanf("%f,%f,%f",&p1.x,&p1.y,&p1.z);
printf("Enter point2:");
scanf("%f,%f,%f",&p2.x,&p2.y,&p2.z);
printf("distance: %f\n",dist(p1,p2));
return 0;
}</math.h></stdio.h>
調試運行結果
空間上兩點的坐標分別為 (1.26,3.54,4.6),(3.21,3.54,7.2),通過程序運行得到該兩點之間的距離為 3.25,運行結果如下所示:
Enter point1:1.26,3.54,4.6
Enter point2:3.21,3.54,7.2
distance: 3.250000
作者:大學生新聞網(wǎng) 來源:大學生新聞網(wǎng)
- C語言求空間兩點之間的距離
- 定義一個表示三維空間點坐標的結構類型,通過函數(shù)求空間上任意兩點之間的距離。
- 03-10 關注:0
- C語言三色旗問題
- 有一根繩子,上面有紅、白、藍三種顏色的旗子。
- 03-10 關注:0
- C語言整數(shù)逆序輸出
- 將一個從鍵盤輸入的整數(shù)存放到一個數(shù)組中,通過程序的運行按照數(shù)組中的逆序輸出該整數(shù),利用遞歸的方法解決問題。
- 03-10 關注:0
- C語言約瑟夫環(huán)問題
- 編號為 1,2,3,…,n 的 n 個人圍坐一圈,任選一個正整數(shù) m 作為報數(shù)上限值,從第一個人開始按順時針方向報數(shù),報數(shù)到 m 時停止,報
- 03-10 關注:1
- C語言輸出等腰三角形
- 本實例要求從鍵盤輸入任意整數(shù) n,通過程序運行輸出對應高度為 n 的等腰三角形。
- 03-10 關注:0
- C語言字符串加密和解密算法
- 在本實例中要求設計一個加密和解密算法。在對一個指定的字符串加密之后,利用解密函數(shù)能夠對密文解密,顯示明文信息。
- 03-09 關注:3