⑴ c語言求兩個字母之間的距離
double 型輸入\輸出為 %lf。
代碼:
#include <stdio.h>
#include <math.h>
int main()
{
double x1,y1,x2,y2,l;
printf("請分別輸入x1 y1 x2 y2:\n") ;
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
l=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf("答案為%lf\n",l);
}
⑵ 用c語言計算兩點間的距離
#include <math.h>
#include <stdio.h>
void main()
{
float x1, y1, x2, y2;
float d;
printf("請輸入x1,y1,x2,y2,用空格隔開: ");
scanf("%f %f %f %f", &x1, &y1, &x2, &y2);
d = sqrtf((x2 - x1) * (x2 - x1) +(y2 - y1) * (y2 - y1));
printf("兩點間的距離為%.2f", d);
}
(2)c語言一個兩元素的距離擴展閱讀:
c語言的基本運算的注意事項
一、運算順序
1、算術表達式
用算術運算符將數據連接起來的式子,稱為「算術表達式」。比如a + b、10 * 5等。如果表達式比較復雜的話,那麼就要注意一下它的運算順序。表達式的運算順序是按照運算符的結合方向和優先順序進行的。
2、結合方向
算術運算符的結合方向是從左到右。例如表達式2+3+4,先計算2+3。
3、 優先順序
優先順序越高,就越先進行運算,當優先順序相同時,參照結合方向。下面是算術運算符的優先順序排序:
負值運算符(-)>乘(*)、除(/)、模(%)運算符>加(+)、減(-)運算符
例如表達式4+5*8/-2的計算順序為:-、*、/、+,最後的結果是-16
4、小括弧
如果需要先計算優先順序低的可以使用小括弧()括住,小括弧的優先順序是最高的!
例如4+5*8-2默認的計算順序是:*、+、-
如果想先執行加法運算,就可以這樣寫:(4+5)*8-2,最後的結果都是不一樣的。
二、關系運算符的使用注意
1、關系運算符中==、!=的優先順序相等,<、<=、>、>=的優先順序相等,且前者的優先順序低於後者
例如2==3>1 :先算3>1,條件成立,結果為1。再計算2==1,條件不成立,結果為0。因此2==3>1的結果為0。
2、關系運算符的結合方向為「從左往右」
例如4>3>2 :先算4>3,條件成立,結果為1。再與2比較,即1>2,條件不成立,結果為0。因此4>3>2的結果為0。
3、關系運算符的優先順序小於算術運算符
例如3+4>8-2 :先計算3+4,結果為7。再計算8-2,結果為6。最後計算7>6,條件成立,結果為1。因此3+4>8-2的結果為1。
⑶ c語言求兩個坐標的距離
需要包含數學庫文件。然後使用下面的公式計算距離。
d=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1));
以上涉及的變數都採用double型。
⑷ C語言求兩點間距離
#include <math.h>
#include <stdio.h>
void main()
{
float x1, y1, x2, y2;
float d;
printf("請輸入x1,y1,x2,y2,用空格隔開: ");
scanf("%f %f %f %f", &x1, &y1, &x2, &y2);
d = sqrtf((x2 - x1) * (x2 - x1) +(y2 - y1) * (y2 - y1));
printf("兩點間的距離為%.2f", d);
}
(4)c語言一個兩元素的距離擴展閱讀:
c語言的基本運算的注意事項
一、運算順序
1、算術表達式
用算術運算符將數據連接起來的式子,稱為「算術表達式」。比如a + b、10 * 5等。如果表達式比較復雜的話,那麼就要注意一下它的運算順序。表達式的運算順序是按照運算符的結合方向和優先順序進行的。
2、結合方向
算術運算符的結合方向是從左到右。例如表達式2+3+4,先計算2+3。
3、 優先順序
優先順序越高,就越先進行運算,當優先順序相同時,參照結合方向。下面是算術運算符的優先順序排序:
負值運算符(-)>乘(*)、除(/)、模(%)運算符>加(+)、減(-)運算符
例如表達式4+5*8/-2的計算順序為:-、*、/、+,最後的結果是-16
4、小括弧
如果需要先計算優先順序低的可以使用小括弧()括住,小括弧的優先順序是最高的!
例如4+5*8-2默認的計算順序是:*、+、-
如果想先執行加法運算,就可以這樣寫:(4+5)*8-2,最後的結果都是不一樣的。
二、關系運算符的使用注意
1、關系運算符中==、!=的優先順序相等,<、<=、>、>=的優先順序相等,且前者的優先順序低於後者
例如2==3>1 :先算3>1,條件成立,結果為1。再計算2==1,條件不成立,結果為0。因此2==3>1的結果為0。
2、關系運算符的結合方向為「從左往右」
例如4>3>2 :先算4>3,條件成立,結果為1。再與2比較,即1>2,條件不成立,結果為0。因此4>3>2的結果為0。
3、關系運算符的優先順序小於算術運算符
例如3+4>8-2 :先計算3+4,結果為7。再計算8-2,結果為6。最後計算7>6,條件成立,結果為1。因此3+4>8-2的結果為1。
⑸ 為什麼C語言,數組 相鄰兩個元素地址相減,輸出結果和顯示結果不同。
C語言中兩個地址相減指的是兩個地址間數組元素的個數,而不是間隔的位元組數。
比如
int a[10],*p;
p=a;
a[1]-a[0] 值為1,而不是4
p+4 指的是p指針所指單元的後面第4個元素,即a[4],而不是a[1]。
⑹ C語言求兩個點之間的距離問題
double 型輸入\輸出為 %lf。
代碼:
#include <stdio.h>
#include <math.h>
int main()
{
double x1,y1,x2,y2,l;
printf("請分別輸入x1 y1 x2 y2:\n") ;
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);
l=sqrt((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2));
printf("答案為%lf\n",l);
}
⑺ c語言關於求「已知坐標的兩點之間距離的距離」的問題
#include<stdio.h>
#include<math.h>
int main()
{
int x,x1,y,y1;
printf("輸入第一個點坐標:如3 4\n");
scanf("%d %d",&x,&y);
printf("輸入第一兒個點坐標:如5 6\n");
scanf("%d%d",&x1,&y1);
printf("(%d,%d)與(%d,%d)的距離是:%.2f\n",x,y,x1,y1,sqrt(pow((x-x1),2)+pow((y-y1),2)));
return 0;
}
⑻ 一個C語言題 int a[30]中,相鄰兩元素的地址相差多少 謝謝大神解答!:)
每個元素都是int型嘛;又是連續的;int長度為4 啊;。
⑼ 用C語言編寫一個程序:定義一個點的坐標,然後定義兩個點,求這兩個點間的距離。
#include<stdio.h>
#include<math.h>
structPoint
{
doublex,y;
};
/**.*/
doubledistance(conststructPoint*a,conststructPoint*b)
{
returnsqrt((a->x-b->x)*(a->x-b->x)+(a->y-b->y)*(a->y-b->y));
}
intmain()
{
structPointa,b;
printf("Pleaseinputthefirstpoint:");
scanf("%lf%lf",&a.x,&a.y);
printf("Pleaseinputthesecondpoint:");
scanf("%lf%lf",&b.x,&b.y);
printf("Thedistanceofthetwopointis%f. ",distance(&a,&b));
return0;
}
說明:
1、distance() 函數的兩個參數 const struct Point *a 和 b 使用了 const 修飾,是表示 a 和 b 在函數執行過程中不會被修改;這樣即使函數體內部寫錯,修改了 a 和 b 的值,編譯也不會通過。
2、對 double,scanf 用 %lf,printf 用 %f。
以上。
⑽ c語言:編寫一個c程序,輸入兩點坐標,求這兩點的距離
聲明x1、y1、x2、y2浮點型變數為點p1和p2的座標,輸入數值後直接由公式√(x1-x2)^2+(y1-y2)^2求出。代碼如下:
#include"stdio.h"
#include"math.h"//調用sqrt需要包含此文件
intmain(intargc,char*argv[]){
doublex1,y1,x2,y2;
printf("... ");
scanf("%lf%lf%lf%lf",&x1,&y1,&x2,&y2);//輸入點座標
printf("Thedistance(p1(%g,%g)top2(%g,%g))is",x1,y1,x2,y2);
printf("%g ",sqrt((x1-=x2)*x1+(y1-=y2)*y1));//直接用公式求結果
return0;
}
運行樣例如下: