在c語言中如何將兩個數進行互換,在C語言中如何將兩個數進行互換

2021-06-25 15:02:44 字數 2867 閱讀 7767

1樓:匿名使用者

將兩個數進行互換的方法有兩種形式:

1、藉助中間變數完成,此方法直觀,易理解,使用最多2、不需要中間變數,通過變數身的運算完成交換。

方法1:

int a=2,b=3,t;

t=a; //先將a儲存到臨時變數t中

a=b; //將b儲存到a中

b=t; //將臨時變數中的原a值儲存到b中printf("a=%d b=%d\n", a,b );

方法2:

int a=2,b=3,t;

a += b ; //把兩數之和存到a中

b= a-b ; //用兩數和減去b可得原a,儲存到b中a= a-b ; //因為b現在是原a值,所以,用兩數和減去b(原a)可得 原b,儲存到a中

此方法,還可以用異或運算來實現,原理相同。

2樓:手機使用者

邊的書的值給左邊的數 執行c=a;a=b;b=c 就是把a 的值給c c的值就沒有了 變成a 的值了, 其餘的也是這樣, 就像兩杯水 要讓他們換過來, 就要把其中的一杯倒到另一隻空杯子裡 把另一杯倒到剛空出來的杯子裡 然後再把第三隻杯子裡的水倒到第一隻杯子裡的道理是一樣的

3樓:匿名使用者

如果只是將兩個數互換的話,樓上的有些複雜了,其實用一箇中間變數就行了,例如把a和b的值互換

int a,b,t;

scanf("%d,%d",&a,&b);

t=a;

a-b;

b=t;

這樣就行了

4樓:

#include

void swap(int * a,int *b)

void main()

5樓:匿名使用者

定義 a ,b, c,

把a儲存到c

把b儲存到a

把c儲存到b

這要就ok了!

int a, b , c;

c = a;

a = b;

b = c;

c語言用函式如何實現兩個數交換?

6樓:匿名使用者

#include"stdio.h"int swap(int *a,int *b)

main()

7樓:天平座de魚

c語言用函式如何實現兩個數交換的話?比較難發揮。

8樓:倒黴熊

#include

main()

printf("%d > %d\n",*za,*zb);

printf("%d > %d\n",a,b);

}int hanshu(int *x,int *y)

9樓:匿名使用者

int hanshu(int *x,int *y)這裡應把temp定義為int型

int temp;

temp = *x;

*x = *y;

*y = temp;

這樣就內對容了

10樓:溪貝溪貝

#include

void huhuan(int*, int*);

int main(void)

void huhuan(int*m, int*n)

c語言怎麼用自定義函式將兩個數交換

11樓:雪v歌

要用函式實現兩個數的交換,則函式引數必須定義為指標形式,否則函式中對數值的修改將不會影響主調函式,這是c語言的規則。

所以,以整型為例,自定義函式書寫如下:

void swap_int(int*a,int*b)

在c語言中如何將兩個數進行互換

12樓:仲維傳媒

#include

int main()

執行結果:

c語言問題(實現講兩個數進行對調的操作)

13樓:匿名使用者

填:a=a-b;

原理是這個樣子的:

假設a裡面的值是m,b裡面的值是n

先執行a=a+b;此時a裡面放

專的是兩者的和即

屬m+n,

再執行b=a-b; a裡面的值(m+n)再減去b的值(n)得m,把m給b

所以執行完該語句後,b的值由n變成了m。此時a的值還是m+n該句相當於b=(m+n)-n

最後執行a=a-b;即a=(m+n)-m得a的值為n完成了交換

14樓:匿名使用者

填a-b就好了

a=a+b是把a+b賦給a

b=a-b 因為現在a是a+b 所以 b=a+b-b 就得到了b=a而a的值還沒有變,還是等於a+b 所以a=a-b就得到a了

15樓:匿名使用者

a-b理由:設初始值為a0,b0。

看a=a+b;b=a-b;a=_____;

此時a=a0+b0;b=a-b0=a0;

a=a-b=(a0+b0)-a0=b0.完成。

16樓:匿名使用者

填 a-b 因為a=a+b時 a+b的和值給重新給a了 b=(a+b)-b,所以-a=(a+b)-(a+b)-b

所以 要想a換成b的話

此時b相當與回a a相當與a+b 所以就a-b了很完美吧?給點點答分吧...

17樓:

a=a+b;

b=a-b;//此時a=a+b,so,b=原來的a

a=_____; //a=a-b即可

C語言中如何將連結串列儲存為檔案,C語言中如何將一個連結串列儲存為檔案?

第一步 建立檔案 比如說 file fp fopen 第二步 寫一個迴圈,把連結串列的節點一個一個寫進檔案裡。第三部 記得關閉檔案 1 基本思想是通過遍歷的方式儲存 資料,不儲存指標域 還原的時候,根據儲存的方式讀取資料,再建連結串列。2 比如單連結串列,一次遍歷可以得到一個一維陣列,儲存該陣列即可...

請問在C語言裡如何將陣列元素的個數設為輸入的值

我當初學c的時候有過和你一樣的想法,但是陣列的記憶體只能靜態分配,所以你必須指明陣列的大小。比如 int a 10 char ch i love china 一個顯式指定大小,一個是隱式指定。這個陣列不能是變數,只能是常量,沒法設定的。這其實就是動態開闢陣列,需要使用到malloc函式 includ...

C語言中,如何將整型變為浮點型。比如int X 123,我要輸出

double xs double 123 1000 float xs 123 1000.0 printf 0.3f n xs double xs 123 0.001 這樣即可,它會自動完成型別轉換 c語言中如何將bool型轉化成int型?對於這種問題,bai網上直du接就能搜的到,c 語法zhi書上...