當前位置:首頁 » 編程語言 » c語言調用swapmin函數
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言調用swapmin函數

發布時間: 2023-05-25 09:14:57

c語言編寫兩個函數,min實現返回最小值下標,swap交換任意兩個函數的值,主函數實現數組(任意數

#include <stdio.h>

int a[8]={5,8,6,9,3,1,2,4};

int min(int x,int y)

{return a[x]<a[y]?x:y;

}

void swap(int *a,int *b)

{int t;

t=*a;*a=*b;*b=t;

}

int main()

{int i,j,t;

for(i=0;i<7;i++)

for(j=0;j<7-i;j++)

if(min(j,j+1)!=j)swap(&a[j],&a[j+1]);

for(i=0;i<8;i++)

printf("%d ",a[i]);

printf(" ");

return 0;

}

② C語言中swap的作用和用法

swap函數一般是一個程序員自定義函數。

  1. 通常是實現兩個變數數值的交換,用法比較廣泛。

  2. 可使用臨時變數實現交換;可通過臨時指針變數實現交換;可藉助指針加入臨時變數來實現交換。

  3. return 0;

  4. }

  5. swap1: x:4,y:3

  6. swap2: x:4,y:3

  7. swap3: x:3,y:4

  8. swap4: x:4,y:3

  9. swap5: x:3,y:4

  10. swap6: x:4,y:3

  11. swap7:ppx:3,ppy:4

拓展資料:

計算機中swap函數很多,在不同領域有不同的用法,但都是交換的意思。比如字元串交換swap操作實現交換兩個容器內所有元素的功能。要交換的容器的類型必須匹配: 必須是相同類型的容器,而且所存儲的元素類型也必須相同。調用了swap函數後,右操作數原來存儲的元素被存放在左操作數中,反之亦然。

③ 求一個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函數一般是一個程序員自定義函數,是實現兩個變數數值的交換。

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;

}

(4)c語言調用swapmin函數擴展閱讀

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函數 一定要用指針嗎

不一定。

void swap(int a,int b)

{

int t;

t=a;

a=b;

b=t;

}

這樣寫,只是傳了一份拷貝給a,b,交換好後,棧清空,沒有傳回給你原來所要交換的數。而printf放裡面可以是因為你的那份拷貝(即a,b)的值是跟你要交換的數一樣的,所以行得通。

不用指針的方法就是:

void swap(int &a,int &b)
{

int t;

t=a;

a=b;

b=t;
}
這樣就可以了,這個傳進去的是原先數據的地址,地址都改變了,值也就交換了。

(5)c語言調用swapmin函數擴展閱讀:

關於指針與swap函數

1、用變數的指針交換,其實只是用指針名及指針運算符*訪問變數 ,修改了變數的值。

int temp;

int *pa=&a;

int *pb=&b;

temp=*pa; *pa=*pb;*pb=temp;

2、用變數的引用交換,用」別名「訪問變數

int temp;

int &aa=a;

int &bb=b;

temp=aa; aa=bb;bb=temp;

3、變數直接交換,用變數名訪問變數,修改了變數的值

int temp;

int a=5;

int b=6;

temp=a; a=b; b=temp;

4、2的變形

int* temp;

int* pa=&a; int* pb=&b;

temp=pa; pa=pb;pb=temp;

cout<<*pa<<endls //-----指針交換了指向的地址,如果用*pa訪問變數,此時就算是交換了,但是a和b沒有交換。