Examly題庫立即開始練習
國營聯招 資訊計算機原理、網路概論1089單選題

副程式傳參數採傳址方式(call by address or reference),以下程式執行完最後產出值為何? begin A,B:integer; procedure P(X,Y,Z:integer); begin Y=Y+1; Z=Z+X+2×Z begin A=3; B=3; P(A+B,A,A); print A; end; end

A3
B6
C17
D18正確答案
答案與詳解
D
正確答案
Call by reference傳址呼叫:傳入的是變數本身的記憶體位址,對參數的修改會直接影響原變數,但傳入表達式(A+B)無法被修改。

為什麼答案是 D

正確追蹤:Y與Z都指向A的位址,X為A+B表達式(call by reference下視為常數6)。執行Y=Y+1 → A=4;執行Z=Z+X+2×Z → A=4+6+2×4=18,print A輸出18。

考點:忽略副作用考點:計算不完整考點:時間點誤判考點:Call by Reference
載入中…

想練更多計算機原理、網路概論考古題?

Examly 收錄 38 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。

Download on theApp Store即將推出Google Play
黑皮