農會 資訊管理類程式設計108 年第 17 題單選題
C 語言程式片段,int A[3][3]={{1,2,3},{4,5,6},{7,8,9}}; 執行後,A[1][2]的值為多少?
A正確答案
C語言二維陣列索引從0開始,A[1][2]代表第2列第3行的元素,對應值為6。
為什麼答案是 A
A[1]對應第二列{4,5,6},[2]對應第三個元素,故值為6。
考點:二維陣列索引考點:索引錯置
載入中…
完整詳解
Pro · 無限重點 C語言二維陣列索引從0開始,A[1][2]代表第2列第3行的元素,對應值為6。
陣列索引從0起算。A[1]找第2個大括號{4,5,6},[2]找其中第3個數字即為6。
逐選項分析
A二維陣列索引✓ 正確
A[1]對應第二列{4,5,6},[2]對應第三個元素,故值為6。
B索引錯置✕ 陷阱
8是A[2][1]的值,屬於第三列第二個元素,為行列索引皆加1的錯誤結果。
C索引錯置✕ 陷阱
3是A[0][2]的值,屬於第一列第三個元素,誤將列索引1當作第一列。
D索引錯置✕ 陷阱
7是A[2][0]的值,屬於第三列第一個元素,為行列索引計算完全錯置的結果。
二維陣列 A[3][3] 元素對照表
| 列索引 (Row) | 行索引 0 | 行索引 1 | 行索引 2 |
|---|
| 0 (第1列) | A[0][0]=1 | A[0][1]=2 | A[0][2]=3 |
| 1 (第2列) | A[1][0]=4 | A[1][1]=5 | A[1][2]=6 |
| 2 (第3列) | A[2][0]=7 | A[2][1]=8 | A[2][2]=9 |
C語言陣列索引從0開始起算,而非從1開始。初學者常以人類直覺的「第1、2、3」直接帶入索引,導致行列位置計算錯誤而選錯答案。