C語言問題 怎樣用指標和函式實現兩個陣列的交換

時間 2021-09-05 11:59:54

1樓:匿名使用者

形參定義為指標變數可以實現實引數組交換……

2樓:匿名使用者

#include void swaparr(int *a,int m,int *b,int n)

}void main() ;

int b = ;

int i,m,n;

m = sizeof(a)/sizeof(int);

n = sizeof(b)/sizeof(int);

printf("\n交換前的陣列a中的元素為 :\n");

for (i = 0;i < m;i++) printf("%5d",a[i]);

printf("\n交換前的陣列b中的元素為 :\n");

for (i = 0;i < n;i++) printf("%5d",b[i]);

swaparr(a,m,b,n);

printf("\n交換後的陣列a中的元素為 :\n");

for (i = 0;i < m;i++) printf("%5d",a[i]);

printf("\n交換後的陣列b中的元素為 :\n");

for (i = 0;i < n;i++) printf("%5d",b[i]);

printf("\n\n");}

c語言使用指標函式進行陣列互換問題 10

3樓:匿名使用者

你這個只是試圖交換兩個陣列的首地址,而陣列的首地址是常量,不會交換成功的。

你的swap中要用迴圈一次交換兩個陣列的對應元素才能實現你想要的功能。

c語言中實現兩個一維陣列間元素的交換

4樓:

以下程式執行通過。陣列大小可自行在巨集定義中重新定義。陣列資料型別也可以再改變重新定義。

#include

#include

#define n 10

int main()

for(i=0;i

printf("%5d",b[i]);

system("pause");

return 0;}

5樓:大

#include

#define n 5

void main()

for(i=0;i

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

printf("\n");

for(i=0;i

printf("%3d",b[i]);

printf("\n");

}//不懂得可以繼續問

c語言用指標和自定義函式實現陣列元素的調換 20

6樓:古神孤鴻

#include

#define n 10

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

int main(void)

void swap (int *a, int *b, int n)}

向學長提個c語言問題(關於指標和函式)

g洋蔥頭 呵呵.其實你的理解很正確的.不過 函式形參是一個區域性變數,只在函式內部有用,函式一旦退出,形參就被釋放了 這句話只針對變數是正確的.對指標就不正確了.指標你可以直接當做一個地址來看.int fun int n 這個函式xp n得到的是n這個變數的地址地址一直都是存在的.你用完這個函式後如...

c語言問題,陣列與指標,C語言陣列和指標的問題

char a computer a指向一個常量字串,常量字串是不能修改的,而你的for迴圈內要修改a指向的這個常量字串,自然要出錯 char a computer 這個a就是個普通陣列了,它的內容是可以改動的,就不會出錯了 因為 a是個指標啊 所以應該賦值賦地址!所以 應該 char a compu...

c語言指標作為函式變數怎麼用,c語言 編一程式 交換兩個變數的值(用指標做函式引數)

最大的寶寶 在函式exe中,應該用指標來改變它指向的值,而不單純改變指標的值。因為這個指標只是一個拷貝,改變它的值毫無意義 void exe int p,int q int main return 0 void exe int p,int q include void exe int p,int q...