① c語言中swap 是什麼意思
swap函數一般是一個程序員自定義函數。通常是實現兩個變數數值的交換。
1.swap1(x,y);
printf("swap1: x:%d,y:%d ",x,y);//形參傳值,不能交換,實際傳過去是拷貝的一份,沒改變主函數中x,y。
2.swap2(&x,&y);
printf("swap2: x:%d,y:%d ",x,y);//不能交換,函數中只是地址交換了下,地址指向的內容沒有交換。
3.swap3(&x,&y);
printf("swap3: x:%d,y:%d ",x,y);//能交換,地址指向的內容進行了交換。
(1)c語言syap函數擴展閱讀
C語言是一門通用計算機編程語言,廣泛應用於底層開發。
C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。
② c語言中swap 是啥意思
交換兩個變數的內容,也就是值
③ c語言中swap是個什麼函數
swap函數一般是一個程序員自定義函數,是實現兩個變數數值的交換。
1、比如:
int a = 2;
int b =3;
swap(a,b); //一般用到變數數值交換,交換後a=3 b = 2;
2、通過使用臨時變數實現交換。
void swap1(int x,int y)
{
int temp;
temp=x;
x=y;
y=temp;
}
(3)c語言syap函數擴展閱讀
C語言swap函數的使用
#include<stdio.h>
void swap(int *pa,int *pb)
{
int temp;
temp=*pa,*pa=*pb,*pb=temp;
}
void main()
{
int a=10,b=20;
swap(&a,&b);//傳遞的是實參變數a,b的地址
printf("a=%d,b=%d ",a,b);
}
④ 求一個C語言程序題:編寫一個函數SWAP()實現交換兩個數位置的功能
#include <stdio.h>
void swap(int *p, int *q);//用傳地址的方法交換
void main()
{
int i, j;
scanf("%d%d", &i, &j);//從鍵盤輸入兩個交換的數
swap(&i, &j);//傳入i,j的地址
printf("i = %d, j = %d\n", i, j);//輸出交換後的兩個值
}
void swap(int *p, int *q)
{
int temp;//定義臨時變數 存放中間值
temp = *p;
*p = *q;
*q = temp;
}
注意:不能直接寫void swap(int i, int j);
因為那隻是臨時變數,函數調用完後,便釋放空間,兩個值並沒有交換。
⑤ C語言中的swap是什麼意思
swap函數一般是一個程序員自定義函數。通常是實現兩個變數數值的交換。比如
int a = 2;
int b =3;
swap(a,b); //一般用到變數數值交換,交換後a=3 b = 2;
實現的方法多種多樣。比如下面幾種寫法:
1、通過使用臨時變數實現交換。
void swap1(int x,int y)
{
int temp;
temp=x;
x=y;
y=temp;
}
2、通過臨時指針變數實現交換。
void swap2(int *x,int *y)
{
int *temp;
temp=x;
x=y;
y=temp;
}
3、藉助指針加入臨時變數來實現交換。
void swap3(int *x,int *y)
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}
⑥ C語言中swap的作用和用法
swap函數一般是一個程序員自定義函數。
通常是實現兩個變數數值的交換,用法比較廣泛。
可使用臨時變數實現交換;可通過臨時指針變數實現交換;可藉助指針加入臨時變數來實現交換。
return 0;
}
swap1: x:4,y:3
swap2: x:4,y:3
swap3: x:3,y:4
swap4: x:4,y:3
swap5: x:3,y:4
swap6: x:4,y:3
swap7:ppx:3,ppy:4
拓展資料:
計算機中swap函數很多,在不同領域有不同的用法,但都是交換的意思。比如字元串交換swap操作實現交換兩個容器內所有元素的功能。要交換的容器的類型必須匹配: 必須是相同類型的容器,而且所存儲的元素類型也必須相同。調用了swap函數後,右操作數原來存儲的元素被存放在左操作數中,反之亦然。
⑦ c語言swap函數什麼作用
C語言的庫函數裡面沒有這個函數,這是一個用戶自定義的函數。
程序裡面都會寫著函數的作用,一般都是用於兩個變數的交換。
⑧ c語言中,swap函數問題
#include<stdio.h>
#include<algorithm>
usingnamespacestd;//錯誤1,swap(,)需要std支持
intmain(intargc,char*argv[])
{
chara[4];//注意輸入時候不要超過3個字元,因為大小定義為4
scanf("%s",a);//錯誤2,while循環使用有問題
if(a[0]>a[1])swap(a[0],a[1]);
if(a[0]>a[2])swap(a[0],a[2]);
if(a[1]>a[2])swap(a[1],a[2]);
printf("%c%c%c",a[0],a[1],a[2]);//錯誤3,輸出用printf()
return0;
}
⑨ 一個C語言swap函數,表示不解
void fun(int *a,int *b)
{
int *c;
c=a;c=b;b=c;
} 這個函數實際上什麼都沒有做。形參 a,b中存的地址互換。只做這些沒有任何意義。
地址傳遞也是「傳遞」,
fun(p,q) 就是 a=p;b=q ,然後,函數裡面 a<=>b p 與q裡面存儲的地址沒有變化。