國中教甄|資訊科技資訊科技109 年第 99 題單選題
請問以下程式,將顯示多少行輸出?
main()
{
int i = 0;
do {
for (int j = 0; j < 4; j = j + 1)
printf("%d\n", i + j);
i = i + 1;
} while (i < 4);
}
C正確答案
外層 do-while 讓 i 從 0 跑到 3 共 4 次,每次內層 for 讓 j 從 0 到 3 各印 1 行,共 4 × 4 = 16 行。
逐選項解析
A20✕ 易錯陷阱
若把外層算成 5 次(多算 i=4)才會得到 5 × 4 = 20;但 i 變成 4 時 while (i < 4) 不成立,迴圈結束,外層只跑 4 次。
B9✕ 錯誤
若誤把兩層迴圈都算成 3 次(3 × 3)才會得到 9;實際上 i 與 j 都從 0 開始、條件為 < 4,各執行 4 次,共 16 行。
立即註冊,看完整詳解
這題的完整詳解,註冊就能看 · 每天 2 題免費
精選詳解- 完整逐選項解析
- 秒殺解題技巧與破題關鍵
- 關鍵知識表整理
- 陷阱與易錯提醒
- 同考點歷屆題庫連續刷題與錯題本