Programming Practice

假設 Am´n 的矩陣,Bn´p 的矩陣, Cm´p 的矩陣,且 C=A´B,即

使用動態記憶體分配 (dynamic memory allocation),寫一個C語言的程式以執行以下的步驟:

  1. 輸入 m, n, 和 p 三個正整數,

  2. 使用副程式  malloc() 以分配矩陣 AB、和 C 的記憶體空間,

  3. 使用副程式 rand() 隨機產生矩陣 A B 元素的值 (假設AB 元素的值在 0 和 99 之間),

  4. 計算矩陣 C 元素的值,

  5. 輸出矩陣 AB、和 C

以下為程式執行範例:

Enter matrix size m: 5
Enter matrix size n:
4
Enter matrix size p:
6

Matrix A:
 41  67  34   0
 69  24  78  58
 62  64   5  45
 81  27  61  91
 95  42  27  36

Matrix B:
 91   4   2  53  92  82
 21  16  18  95  47  26
 71  38  69  12  67  99
 35  94   3  11  22  33

Matrix C:
  7552   2528   3634   8946   9199   8470
 14351   9076   6126   7511  13978  15918
  8916   5692   1756   9921  10037   8728
 15454  11628   5130   8591  14810  16386
 12704   5462   2917   9745  13315  12743