真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網站制作重慶分公司

c語言用函數(shù)交換變量值,c語言如何交換變量

C語言題目:編寫函數(shù),交換兩變量的值。

void

創(chuàng)新互聯(lián)公司主要從事網站建設、成都做網站、網頁設計、企業(yè)做網站、公司建網站等業(yè)務。立足成都服務大荔,十載網站建設經驗,價格優(yōu)惠、服務專業(yè),歡迎來電咨詢建站服務:13518219792

swap(int

*a,int*

b)

{

int

temp=0;

temp=*a;

*a=*b;

*b=temp;

}

因為是指針,只要更換指針內的內容就可以了;

還有一種是

換指針,就設a指向沒存A,b指向內存B,交換后把b指向內存A,把a指向內存B

void

swap(int

*a,int*

b)

{

int

*temp;

temp=a;

a=b;

b=temp;

}

C語言中如何交換兩個指針變量的的值

1、首先,就是最基本的知識,寫頭文件、函數(shù)聲明、定義變量。

2、下面還需要定義指針,需要定義兩個指針p1和p2,然后把a的地址賦值給p1,把b的地址賦值給p2。

3、然后就是調用函數(shù),該函數(shù)沒有返回值,就直接調用,但是參數(shù)進入的是a和b的地址,而不是a和b。

4、函數(shù)點用完之后,就是輸出a和b的值看一看是否互換了。

5、首先,a和b的地址傳給x和y,通過指針直接對a和b的值進行操作。

6、最后,就是調換*x和*y的值,這樣就是實現(xiàn)了a和b的值。

C語言用函數(shù)如何實現(xiàn)兩個數(shù)交換?

#include"stdio.h"int swap(int *a,int *b){int temp;temp=*a;*a=*b;*b=temp;}

main(){int x,y;printf("請輸入x與y的值,用空格隔開\n");scanf("%d%d",x,y);printf("x=%d,y=%d\n",x,y);swap(x,y);printf("交換后\nx=%d,y=%d\n",x,y);}

擴展資料:

C語言是一門通用計算機編程語言,廣泛應用于底層開發(fā)。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環(huán)境支持便能運行的編程語言。

盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規(guī)格寫出的C語言程序可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業(yè)平臺。

二十世紀八十年代,為了避免各開發(fā)廠商用的C語言語法產生差異,由美國國家標準局為C語言制定了一套完整的美國國家標準語法,稱為ANSI C,作為C語言最初的標準。目前2011年12月8日,國際標準化組織(ISO)和國際電工委員會(IEC)發(fā)布的C11標準是C語言的第三個官方標準,也是C語言的最新標準,該標準更好的支持了漢字函數(shù)名和漢字標識符,一定程度上實現(xiàn)了漢字編程。

C語言是一門面向過程的計算機編程語言,與C++,Java等面向對象的編程語言有所不同。其編譯器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

參考資料:百度百科-C語言

5、使用C語言編寫一個函數(shù),用于交換兩個變量的值(地址傳遞)。

不知道你要交換的兩個變量類型,所以這里以整型數(shù)據(jù)交換為例,以下swap函數(shù)實現(xiàn)了交換兩個整型變量值的功能:

#include?stdio.h

//?交換給定指針指向整型變量的值。

//?參數(shù):

// a?-?指向第一個變量的指針

// b?-?指向第二個變量的指針

void?swap(int*?a,?int?*?b);

int?main(int?argc,?int?argv)

{

int?a?=?3,?b?=?5;

printf_s("交換前:a?=?%d,?b?=?%d\n",?a,?b);

swap(a,?b);

printf_s("交換后:a?=?%d,?b?=?%d\n",?a,?b);

return?0;

}

//?交換給定指針指向整型變量的值。

//?參數(shù):

// a?-?指向第一個變量的指針

// b?-?指向第二個變量的指針

void?swap(int*?a,?int*?b)

{

//?聲明一個臨時變量,保存第一個指針指向變量

//?的值。

//?其中?*a?是取出?a?指針指向變量的值

int?temp?=?*a;

//?將?b?指針指向的值賦值給?a?指針指向變量

(*a)?=?(*b);

//?將臨時變量?temp?中保存的?a?指針指向變量的值賦值給

//?b?指針指向的變量。

(*b)?=?temp;

}

以上代碼運行結果如下:

以下代碼實現(xiàn)了使用宏定義作為模板,聲明不同類型交換函數(shù)的功能,以下以聲明double和float為例:

#include?stdio.h?

//?聲明一個函數(shù)代碼模板,邏輯參考?swap(int*?a,?int*?b)

#define?DEF_SWAP_FUNC(Type)?void?swap_##Type(Type*?a,?Type*?b)?\

{?\

Type?temp?=?(*a);?\

(*a)?=?(*b);?\

(*b)?=?temp;?\

}?

//?使用模板聲明并實現(xiàn)一個?double?類型變量交換函數(shù),函數(shù)名為?swap_double

DEF_SWAP_FUNC(double)

//?使用模板聲明并實現(xiàn)一個?float?類型變量交換函數(shù),函數(shù)名為?swap_float

DEF_SWAP_FUNC(float)

int?main(int?argc,?int?argv)

{

//?double?類型數(shù)據(jù)交換

double?da?=?5.6,?db?=?3.5;

printf_s("double?交換前:da?=?%lf,?db?=?%lf\n",?da,?db);

swap_double(da,?db);

printf_s("double?交換后:da?=?%lf,?db?=?%lf\n",?da,?db);

//?float?類型數(shù)據(jù)交換

float?fa?=?3.4,?fb?=?6.8;

printf_s("float?交換前:fa?=?%f,?fb?=?%f\n",?fa,?fb);

swap_float(fa,?fb);

printf_s("float?交換前:fa?=?%f,?fb?=?%f\n",?fa,?fb);

return?0;

}

運行結果如下:

c語言:調用函數(shù),交換兩個變量的值。

這個無法交換數(shù)據(jù)。

C語言函數(shù)參數(shù)的基本規(guī)則是值傳遞,所以傳遞時只能實現(xiàn)實參向形參的單向的、值的傳遞。這就是為什么需要使用指針才能實現(xiàn)值交換的原因。


當前文章:c語言用函數(shù)交換變量值,c語言如何交換變量
網站路徑:http://weahome.cn/article/hscjsp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部