普考-資訊處理 104 年 · 第 14 題 普考-資訊處理 計算機概要 104 年 第 14 題 單選題
假定有個一維陣列 A,陣列中每個元素需占用 4 個位元 ,如果程式執行時 A ( 60 ) 的記憶體位址為 600 ,則 A ( 310 ) 的位址為何? B 正確答案
一維陣列位址計算核心公式:目標位址 = 已知位址 + (目標索引 - 已知索引) × 元素大小。算出索引差再乘上大小即可得分。
為什麼答案是 B 正確答案。代入公式:Loc(A(310)) = Loc(A(60)) + (310 - 60) × 4 = 600 + 250 × 4 = 600 + 1000 = 1600。
載入中…
完整詳解 Pro · 無限 重點 一維陣列位址計算核心公式:目標位址 = 已知位址 + (目標索引 - 已知索引) × 元素大小。算出索引差再乘上大小即可得分。
索引差為 310 - 60 = 250。每個元素占 4 單位,總位移量為 250 × 4 = 1000。基準位址 600 + 1000 = 1600,秒選 B。
逐選項分析 A ✕
錯誤的計算結果。可能是考生在慌亂中直接將目標索引 310 乘以 10 得到的無意義數字。
B ✓ 正確
正確答案。代入公式:Loc(A(310)) = Loc(A(60)) + (310 - 60) × 4 = 600 + 250 × 4 = 600 + 1000 = 1600。
C ✕ 陷阱
常見陷阱。考生忘記考慮基準位址與基準索引,直接將目標索引 310 乘上元素大小 4,得出 310 × 4 = 1240。
D ✕ 陷阱
常見陷阱。考生記得要加上基準位址 600,卻忘記扣除基準索引 60,直接計算 600 + (310 × 4) = 1840。
一維陣列位址計算公式解析 變數符號 代表意義 本題對應數值 計算步驟 Loc(A(i)) 目標元素位址 待求 最終結果:1600 Loc(A(k)) 已知基準位址 600 起始點 i - k 目標與基準的索引差 310 - 60 = 250 計算距離 d 每個元素占用空間 4 距離 × 空間 = 位移量 (1000)
陣列位址計算的核心是「相對位移」而非「絕對位置」。許多人看到索引就直接乘元素大小,忘記陣列起點不一定在記憶體位址 0。正確做法是先算「要移動幾格」(目標索引減已知索引),再乘元素大小得到位移量,最後加回已知位址。判斷準則:看到任何已知位址不是從 A[0] 開始給的題目,絕對要先做索引相減。常見錯誤是把 A[i] 的索引 i 直接當成「距離起點的格數」,實際上 i 只是陣列編號,真正的位移要看「兩個索引的差」才對。