新聞中心
如何用C語(yǔ)言計(jì)算兩點(diǎn)之間距離
用C語(yǔ)言計(jì)算兩點(diǎn)之間距離的參考代碼:
我們提供的服務(wù)有:成都網(wǎng)站建設(shè)、做網(wǎng)站、微信公眾號(hào)開(kāi)發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、太谷ssl等。為上千余家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢(xún)和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的太谷網(wǎng)站制作公司
#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;in;i++){
? scanf("%f %f",array[i].x,array[i].y);? ?
}
for(i = 0;in;i++){
? //printf("%d %d\n",array[i].x,array[i].y);
? //printf("dis:%.2f\n",distance(array[0],array[i]));
}
maxdis = 0.0;
for(i = 0;in;i++){
? for(j = i;jn;j++){
? ? ? if(distance((array[i]),(array[j])) maxdis ){
? ? ? ? ? //printf("maxdis = :%.2f\n",distance((array[i]),(array[j])));
? ? ? ? ? maxdis =distance((array[i]),(array[j]));
? ? ? }
? }
}
printf("%.2f",maxdis);
}
system("pause");
return 0;
}
//計(jì)算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)? );
}
擴(kuò)展資料:
C語(yǔ)言編寫(xiě)注意事項(xiàng):
1、所有自定義變量?必須聲明才能使用。
2、每行只書(shū)寫(xiě)一條語(yǔ)句, 在運(yùn)算符兩邊加上一個(gè)空格, 便于閱讀。
3、整數(shù)除法將自動(dòng)舍位, 不會(huì)進(jìn)行四舍五入的操作。
4、for(初始化部分;條件部分;增長(zhǎng)部分) - 比while 更適用于初始化和增長(zhǎng)步長(zhǎng)都是單條語(yǔ)句情況下。
5、使用?#define 名字 替換文本 對(duì)部分"幻數(shù)" 賦予意義便于閱讀 #define結(jié)尾不需要“;”號(hào)結(jié)束。
C語(yǔ)言編程問(wèn)題:使用函數(shù)計(jì)算兩點(diǎn)間的距離。
輸入兩點(diǎn)坐標(biāo)(X1,Y1),(X2,Y2),計(jì)算并輸出兩點(diǎn)間的距離。
輸入數(shù)據(jù)有多組,每組占一行,由4個(gè)實(shí)數(shù)組成,分別表示x1,y1,x2,y2,數(shù)據(jù)之間用空格隔開(kāi)。
#includelt;stdio.hgt;
#includelt;math.hgt;
void main()
{
float x1,x2,y1,y2;
printf("請(qǐng)輸入一組數(shù)據(jù):");
while(~scanf("%f%f%f%f",x1,y1,x2,y2))//開(kāi)始讀取輸入的數(shù),知道文件結(jié)束。
{
printf("兩點(diǎn)間的距離為:%.2f\n",sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)));
printf("請(qǐng)輸入一組數(shù)據(jù):");
}
}
擴(kuò)展資料:
c語(yǔ)言基本運(yùn)算
一:算術(shù)運(yùn)算符
算術(shù)運(yùn)算符非常地簡(jiǎn)單,就是小學(xué)數(shù)學(xué)里面的一些加減乘除操作。不過(guò)呢,還是有一些語(yǔ)法細(xì)節(jié)需要注意的。
一、加法運(yùn)算符+
int a=10;
(此處空一行)
int b=a+5;
在第3行利用加法運(yùn)算符+進(jìn)行了加法運(yùn)算,再將和賦值給了變量b,最終變量b的值是15
二、減法運(yùn)算符或負(fù)值運(yùn)算符-
int b=10-5;
(此處空一行)
int a=-10;
1、在第1行利用減法運(yùn)算符-進(jìn)行了減法運(yùn)算,再將差賦值給了變量b,最終變量b的值是5
2、在第3行中,這個(gè)-并不是什么減法運(yùn)算符,而算是一個(gè)負(fù)值運(yùn)算符,-10代表的是負(fù)十
三、乘法運(yùn)算符*
int b=10*5;
注意:乘法運(yùn)算符并不是x或者X,而是星號(hào)*。變量b最終的值是50。
四、除法運(yùn)算符/
double a=10.0/4;
double b=10/4;
(此處空一行)
printf("a=%f,b=%f\n",a,b);
注意:除法運(yùn)算符并不是÷,而是一個(gè)正斜杠/
怎么用C語(yǔ)言求兩點(diǎn)之間距離
#include?stdio.h
#include?math.h
int?main?(void)
{
float?x1,x2,y1,y2,i;
printf?("請(qǐng)依次輸入X1,X2,Y1,Y2的值!\n");
scanf?("%f,%f,%f,%f",x1,x2,y1,%y2);?
i=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf?("兩點(diǎn)間的距離為:%g",i);
return?0;
}
文章題目:c語(yǔ)言函數(shù)點(diǎn)與點(diǎn)的距離 c語(yǔ)言點(diǎn)到直線的距離
轉(zhuǎn)載來(lái)源:http://fisionsoft.com.cn/article/ddcisph.html