關於C語言一維陣列元素互換的問題謝謝了,大神幫忙啊

2021-03-04 03:11:35 字數 1725 閱讀 9043

1樓:kyoya恭

互換就是說把兩bai個不同位置du的資料值相互交換,而zhi交換不能直接交換了,需要dao藉助一箇中間變專量。 舉個例 假設陣列屬有2個元素,分別為1,2 int data[2]; data[0] = 1; data[1] = 2; 現在需要互換,即要達到目的使得data[0] = 2; data[1] = 1; 此時如果直接使用 data[0] = data[1]; // 此時data[0]的值為2了 data[1] = data[0]; // 此時data[1]的值為data[0]的值(之前那一步被改為了2),因此data[1]的值還是2,沒有達到目的,所以藉助一箇中間變數,操作過程 首先將data[0]的值賦給中加變數,儲存起來備用,然後將data[0]的值改為data[1]的值,再將data[1]的值改為原來的data[0]那個值,那個值被儲存在備用的中間變數裡,因此將data[1]的值改為中間變數的值即可達到目的。

關於c語言一維陣列元素互換的問題謝謝了,大神幫忙啊 200

2樓:匿名使用者

1、a和b兩陣列互換,可以建一個陣列c,把a的元素全放進新建的陣列c中,把b放進a,再把c放進b

2、指標操作

如果是一個一維陣列內部元素互換,那麼跟上面類似,建個變數就行了

3樓:聽不清啊

c語言一維陣列元素要求怎樣互換?

4樓:檢甘謝米雪

互換就bai是說把兩個不同位置的du資料值相互交zhi換,而交換不dao

能直接交換了,需回要藉助一答箇中間變數。

舉個例假設陣列有2個元素,分別為1,2

intdata[2];

data[0]=1;

data[1]=2;

現在需要互換,即要達到目的使得data[0]=2;

data[1]=1;

此時如果直接使用

data[0]

=data[1];

//此時data[0]的值為2了

data[1]

=data[0];

//此時data[1]的值為data[0]的值(之前那一步被改為了2),因此data[1]的值還是2,沒有達到目的,所以藉助一箇中間變數,操作過程

首先將data[0]的值賦給中加變數,儲存起來備用,然後將data[0]的值改為data[1]的值,再將data[1]的值改為原來的data[0]那個值,那個值被儲存在備用的中間變數裡,因此將data[1]的值改為中間變數的值即可達到目的。

c語言程式設計:輸入一維陣列的10個元素,並將最小值與第一個數交換,最大值與最後一個數交換.

5樓:匿名使用者

#include

int main()

if(imin != 0)

if(imax != n - 1)

printf("處理後:\n");

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

printf("\n");

return 0;}

6樓:珊瑚海不是海

# include

int main(void)

}for( i=9; i>0; i--)

}for( i=0; i<10; i++)printf("%3d",a[i]);

printf("\n");

return 0;}

C 函式呼叫二維陣列,C語言一維陣列轉二維陣列

n如果是變數的話,陣列編譯時都通不過吧。陣列分配時必須知道大小。函式應該這樣宣告function char array 10 10 或省略第一維的大小function char array 10 function char array n n 這樣是錯誤的,陣列的索引必須是個常量表示式。如果需要必須...

C語言求出二維陣列的每一行的最大元素,並將它們放置到一維

我是不推薦直接給你 程式設計這東西就是要靠自己多動手才能學習好,要是總想別人替你完 內成你永遠也沒有什 容麼收穫,給你個思路 定義a m n b i 其中m i 迴圈比較a m n 每行數的大小,取最大的給b i i c語言求出二維陣列的每一行的最大元素,並將它們放置到一個一維陣列中。printf ...

C語言陣列相加,關於c語言的兩陣列相加問題

m str j str strlen str j 1 rem 改成m str j 0 str strlen str j 1 0 rem 或m str j 48 str strlen str j 1 48 rem 就行了 字元型的數字換成整形的減掉 0 就可以 也就是減48 include stdio...