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...