二維陣列行列互換,並存到另二維陣列中

時間 2021-07-21 03:36:36

1樓:

具體演算法如下:

#include

int main()

int i, j, a[2][3] = , },b[3][2];

printf("array a:\n");

for (i = 0; i <=1; i++)//處理a陣列中的一行中各元素

for (j = 0; j <= 2; j++)//處理a陣列中的某一列元素

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

b[j][i] = a[i][j];

printf("\n");

printf("array b:\n");

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

for (j = 0; j <=1; j++)

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

printf("\n");

return 0;

擴充套件資料:

c語言——關於二維陣列的初始化問題:

1、定義二維陣列的方法和一維陣列相似,如:

2、int a[3][3];

3、就是定義了乙個3行3列的二維陣列。

4、但是麼要注意,這個3行3列的二維陣列是邏輯上的概念,能形象的表示出行列關係。而在記憶體中,各元素是連續存放的,不是二維的,是線性的,這點大家一定要清楚。

5、二維陣列的初始化,可以分行給元素賦值,如步驟一的圖。

6、也可以將所有資料寫在乙個花括號內,按照元素在記憶體中的排列順序對各元素賦初值。但是這種方法一旦資料很多,會寫成一大片,容易遺漏,不方便檢查。

7、可以對部分元素賦值,例如:

8、int a[3][3]=,,};

9、也可以只對某幾行賦值,例如:

10、int a[3][3]=,};

11、如果對全部元素都賦初值,則定義陣列時可以對第一維的長度不指定,但第二維的長度不能省去。

12、也可以只對部分元素賦值,而省略第一維的長度,但應該分行賦值。

2樓:問明

#include

int main()

int i, j, a[2][3] = , },b[3][2];

printf("array a:\n");

for (i = 0; i <=1; i++)//處理a陣列中的一行中各元素

for (j = 0; j <= 2; j++)//處理a陣列中的某一列元素

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

b[j][i] = a[i][j];

printf("\n");

printf("array b:\n");

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

for (j = 0; j <=1; j++)

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

printf("\n");

return 0;

執行結果:

printf用法:

printf()函式的呼叫格式為:printf("《格式化字串》",《參量表》)。

其中格式化字串包括兩部分內容:一部分是正常字元,這些字元將按原樣輸出;另一部分是格式化規定字元,以"%"開始,後跟乙個或幾個規定字元,用來確定輸出內容格式。

參量表是需要輸出的一系列引數,其個數必須與格式化字串所說明的輸出引數個數一樣多,各引數之間用","分開,且順序一一對應,否則將會出現意想不到的錯誤。

比如:int a=1234;

printf("a=%d\n",a);

輸出結果為a=1234。

scanf()是c語言中的乙個輸入函式。與printf函式一樣,都被宣告在標頭檔案stdio.h裡,因此在使用scanf函式時要加上#include。

int scanf(const char*restrict format,...);

函式scanf()是從標準輸入流stdin(標準輸入裝置,一般指向鍵盤)中讀內容的通用子程式,可以說明的格式讀入多個字元,並儲存在對應位址的變數中。

如:scanf("%d%d",&a,&b);

函式返回值為int型,如果a和b都被成功讀入,那麼scanf的返回值就是2。

3樓:倒霉熊

#include

void main()

,,};

int b[4][3],i,j;

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

printf("\n");

}for(i=0;i<4;i++)

printf("\n"); //把這個換行放在這裡}}

c語言 將乙個二維陣列行和列的元素互換,存到另乙個二維陣列。

c語言,將乙個二維陣列a的行和列的元素互換,存到另乙個二維陣列b中。列如 123 1 4 2 5 456 3 6

4樓:匿名使用者

看來你bai是個超級小菜鳥

du啊,解析注上了,慢慢學zhi習吧

main()

,};int b[3][2],i,j;

printf("array a:\n"); //雙引號裡的是字dao符串提示資訊,作用回是在螢幕上顯答

示提示for(i=0;i<=1;i++) //外迴圈i遍歷a陣列的i行

printf("\n");

}printf("array b:\n"); //這個也是for(i=0;i<=2;i++)

5樓:小八

array a array b是表示數抄組a 陣列b第乙個for迴圈是將a陣列裡的資料倒置後放入b陣列 就是這句 b[j][i]=a[i][j]

i表示行下標 j表示列下標 (你吧二維陣列的圖畫出來就懂了)第二個for迴圈是將b陣列列印出來

定義二維陣列4 4,二維陣列中的陣列元素都用鍵盤賦值。求出該二維陣列中主對角線的和C語言

include stdio.h include conio.h include stdlib.h main for i 0 i 4 i printf 此矩陣主對角線的和為 d n num include define m 4 int main int i,j,a m m sum 0 for i 0 ...

定義二維陣列

首先你要理解二維陣列的真正含義,它的第一維就是一組資料的起始位址,第二維就是某組資料中的某個值.其次,你要知道a 4 所表達的意思,是指二維陣列a的每一維都是由4個元素組成的一維陣列.而編譯器可以根據你賦給a的初值個數計算它的第一維長度 元素總個數 4,如果不能整除,則長度加1,此時還應該有幾個沒有...

求助 C語言二維陣列指標問題,c語言二維陣列用指標表示的問題

1.對於int p a p型別和a是不同的。p是指向乙個指標 指向int型別的量 的指標,a則是指向乙個一維陣列 含2個int元素 的指標。想要建立相同型別的指標應該用int p 2 才行 3.感覺p跟a就同級吧但型別不同 所以其實int p a 兩側的指標的型別是不相同的,只是a的值賦給p而已 假...