民國112年 第1梯次 網路架設丙級 學科

第54題

對於下列C/C++程式,何者敘述正確?

題目

對於下列C/C++程式,何者敘述正確?

  1. (1) 若a 及b 均為2x2 矩陣,最內層for 迴圈執行8 次
  2. (2) 若a 及b 均為2x2 矩陣,最外層for 迴圈執行4 次
  3. (3) 若a[2][2]={{1, 2}, {3, 4}}及b[2][2]= {{1,0},{2,- 3}},執行結束後c[2][2]= {{5,6}, {11,12}}
  4. (4) 將a 及b 兩矩陣相加後,儲存至c 矩陣

官方答案

(1) 若a 及b 均為2x2 矩陣,最內層for 迴圈執行8 次

解析

依選項所述程式行為判斷,此為矩陣相乘之三層巢狀迴圈:最外層 i 走列、中層 j 走欄、最內層 k 做累加。當 a、b 皆為 2×2 矩陣時,最外層 i 執行 2 次(非 4 次,故選項 2 錯);最內層 k 對每一 (i,j) 執行 2 次,共有 2×2=4 組 (i,j),故最內層迴圈本體總計執行 2×4=8 次(選項 1 正確)。若以 a={{1,2},{3,4}}、b={{1,0},{2,-3}} 驗算,c[0][1]=1×0+2×(−3)=−6,結果應為 {{5,−6},{11,−12}},與選項 3 不符;且程式為相乘非相加,選項 4 錯。故答案選 1。

AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。

官方資料