用C語言計(jì)算兩點(diǎn)之間距離的參考代碼:
創(chuàng)新互聯(lián)公司主要從事成都做網(wǎng)站、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)遷西,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
#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語言編寫注意事項(xiàng):
1、所有自定義變量?必須聲明才能使用。
2、每行只書寫一條語句, 在運(yùn)算符兩邊加上一個(gè)空格, 便于閱讀。
3、整數(shù)除法將自動(dòng)舍位, 不會(huì)進(jìn)行四舍五入的操作。
4、for(初始化部分;條件部分;增長部分) - 比while 更適用于初始化和增長步長都是單條語句情況下。
5、使用?#define 名字 替換文本 對(duì)部分"幻數(shù)" 賦予意義便于閱讀 #define結(jié)尾不需要“;”號(hào)結(jié)束。
#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;
}
改下flength函數(shù):
float flength(int x1,int y1,int x2,int y2)
{
float length;
length=sqrt(pow((x1-x2),2)+pow((y1-y2),2));
return length;
}
#include math.h
#include stdio.h
void main()
{
float x1, y1, x2, y2;
float d;
printf("請(qǐng)輸入x1,y1,x2,y2,用空格隔開:\n");
scanf("%f %f %f %f", x1, y1, x2, y2);
d = sqrtf((x2 - x1) * (x2 - x1) +(y2 - y1) * (y2 - y1));
printf("兩點(diǎn)間的距離為%.2f", d);
}
擴(kuò)展資料:
c語言的基本運(yùn)算的注意事項(xiàng)
一、運(yùn)算順序
1、算術(shù)表達(dá)式
用算術(shù)運(yùn)算符將數(shù)據(jù)連接起來的式子,稱為“算術(shù)表達(dá)式”。比如a + b、10 * 5等。如果表達(dá)式比較復(fù)雜的話,那么就要注意一下它的運(yùn)算順序。表達(dá)式的運(yùn)算順序是按照運(yùn)算符的結(jié)合方向和優(yōu)先級(jí)進(jìn)行的。
2、結(jié)合方向
算術(shù)運(yùn)算符的結(jié)合方向是從左到右。例如表達(dá)式2+3+4,先計(jì)算2+3。
3、 優(yōu)先級(jí)
優(yōu)先級(jí)越高,就越先進(jìn)行運(yùn)算,當(dāng)優(yōu)先級(jí)相同時(shí),參照結(jié)合方向。下面是算術(shù)運(yùn)算符的優(yōu)先級(jí)排序:
負(fù)值運(yùn)算符(-)??乘(*)、除(/)、模(%)運(yùn)算符??加(+)、減(-)運(yùn)算符
例如表達(dá)式4+5*8/-2的計(jì)算順序?yàn)椋?、*、/、+,最后的結(jié)果是-16
4、小括號(hào)
如果需要先計(jì)算優(yōu)先級(jí)低的可以使用小括號(hào)()括住,小括號(hào)的優(yōu)先級(jí)是最高的!
例如4+5*8-2默認(rèn)的計(jì)算順序是:*、+、-
如果想先執(zhí)行加法運(yùn)算,就可以這樣寫:(4+5)*8-2,最后的結(jié)果都是不一樣的。
二、關(guān)系運(yùn)算符的使用注意
1、關(guān)系運(yùn)算符中==、!=的優(yōu)先級(jí)相等,、=、、=的優(yōu)先級(jí)相等,且前者的優(yōu)先級(jí)低于后者
例如2==31 :先算31,條件成立,結(jié)果為1。再計(jì)算2==1,條件不成立,結(jié)果為0。因此2==31的結(jié)果為0。
2、關(guān)系運(yùn)算符的結(jié)合方向?yàn)椤皬淖笸摇?/p>
例如432 :先算43,條件成立,結(jié)果為1。再與2比較,即12,條件不成立,結(jié)果為0。因此432的結(jié)果為0。
3、關(guān)系運(yùn)算符的優(yōu)先級(jí)小于算術(shù)運(yùn)算符
例如3+48-2 :先計(jì)算3+4,結(jié)果為7。再計(jì)算8-2,結(jié)果為6。最后計(jì)算76,條件成立,結(jié)果為1。因此3+48-2的結(jié)果為1。
可以運(yùn)行啊。你把scanf("%lf,%lf",x1,y1);里么的逗號(hào)改成空格scanf("%lf %lf",x1,y1);
輸入兩點(diǎn)坐標(biāo)(X1,Y1),(X2,Y2),計(jì)算并輸出兩點(diǎn)間的距離。
輸入數(shù)據(jù)有多組,每組占一行,由4個(gè)實(shí)數(shù)組成,分別表示x1,y1,x2,y2,數(shù)據(jù)之間用空格隔開。
#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))//開始讀取輸入的數(shù),知道文件結(jié)束。
{
printf("兩點(diǎn)間的距離為:%.2f\n",sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2)));
printf("請(qǐng)輸入一組數(shù)據(jù):");
}
}
擴(kuò)展資料:
c語言基本運(yùn)算
一:算術(shù)運(yùn)算符
算術(shù)運(yùn)算符非常地簡單,就是小學(xué)數(shù)學(xué)里面的一些加減乘除操作。不過呢,還是有一些語法細(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è)正斜杠/
當(dāng)前題目:c語言兩個(gè)函數(shù)之間的距離,使用函數(shù)計(jì)算兩點(diǎn)間的距離
網(wǎng)站網(wǎng)址:http://muchs.cn/article4/hcjjie.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站導(dǎo)航、網(wǎng)頁設(shè)計(jì)公司、網(wǎng)站內(nèi)鏈、域名注冊(cè)、靜態(tài)網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)