Programming Practice

Am´n 的矩陣和 Bn´m 的矩陣,矩陣 B  是矩陣 A 的轉置矩陣 (transposition),即 B=AT,若且唯若 ai,j=bj,i,當 0i<m, 0j<n.

寫一個C語言的程式以執行以下的步驟:

  1. 宣告 AB 為 100´100 的二維陣列,

  2. 輸入 mn 兩個正整數 (小於或等於 100),

  3. 使用副程式 rand() 隨機產生 m´n A 元素的值 (假設A 元素的值在 1 和 100 之間),

  4. 將矩陣 B 設成 矩陣 A 的轉置矩陣,

  5. 輸出矩陣 A B

將矩陣轉置的運算寫成一個副程式 void transpose(int m, int n, int A[100][100], int B[100][100]),再呼叫此副程式。以下為程式執行範例:

Enter matrix size m: 10
Enter matrix size n: 12

Matrix A:
60  38   6  19  73   6  95  73  86  43  37  16
39  55  60  34   2   4  91  68  42  85   3  70
44  99  73  19  52  18  71  21  85  34  65  91
91  44  44   4  29  37  34  60  62  44  55  92
86  90  64  38  37  47  86  85  32  48  17  46
13  85  14  24  64  84  22  54  85  73  23  86
92  70  60   4  35  50  52  83  15  30  83  55
21  25  64  56  77  97  62  54  32  44  78  98
67  16  16  11  36  85  70   0  61  16  93  61
18  89  93   8  50  60  63  59  61  49   9  91

Matrix B:
60  39  44  91  86  13  92  21  67  18
38  55  99  44  90  85  70  25  16  89
 6  60  73  44  64  14  60  64  16  93
19  34  19   4  38  24   4  56  11   8
73   2  52  29  37  64  35  77  36  50
 6   4  18  37  47  84  50  97  85  60
95  91  71  34  86  22  52  62  70  63
73  68  21  60  85  54  83  54   0  59
86  42  85  62  32  85  15  32  61  61
43  85  34  44  48  73  30  44  16  49
37   3  65  55  17  23  83  78  93   9
16  70  91  92  46  86  55  98  61  91