國小教甄|資訊科技資訊科技106 年第 12 題單選題
請問下列程式執行完後輸出結果為何?
int i=49, j=10;
while (i > 50) { j = i - j; i++; }
printf("%3d%3d", i, j);
A49 10正確答案
B50 39
C51 12
D52 42
A正確答案
因為初始變數 i 為 49,不滿足 while 迴圈條件 i > 50,故迴圈完全不執行,直接輸出初始值。
逐選項解析
B50 39✕ 錯誤
此為錯誤計算結果。若未仔細檢查迴圈進入條件而盲目代入運算,可能會得出錯誤數值,但實際上迴圈並未執行。
C51 12✕ 錯誤
此為錯誤計算結果。迴圈條件一開始即為假,不會執行內部敘述,故 i 與 j 的值不會改變。
立即註冊,看完整詳解
這題的完整詳解,註冊就能看 · 每天 2 題免費
精選詳解- 完整逐選項解析
- 秒殺解題技巧與破題關鍵
- 關鍵知識表整理
- 陷阱與易錯提醒
- 同考點歷屆題庫連續刷題與錯題本