民國110年 普通考試 電子工程 計算機概要
第27題
下列C 程式,執行的結果?#include <stdio.h>int main(void) {int i = 7;if (i < 10) i = 2;else…
題目
下列C 程式,執行的結果?#include <stdio.h>int main(void) {int i = 7;if (i < 10) i = 2;else if(i < 5) i = 6;else i++;printf("%d", i);return 0; } A. 8 B. 6 C. 4 D. 2
官方答案
- 答案:D. 2
解析
程式依序判斷:i 初始為 7,條件 i<10 成立,於是執行 i=2,整個 if-else 鏈即結束,後面的 else if(i<5) 與 else 都不會被求值。這是 if/else if/else 只執行一個分支的特性,即使 i 被改成 2 也不會回頭再判斷。最後 printf 輸出 i 的值 2。A 的 8 是以為會執行 i++;B 的 6 是以為 i<5 會成立;C 的 4 則無對應的運算依據。故正確輸出為 2,答案 D。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。
官方資料
答案以考選部公告之測驗式試題標準答案 PDF 為準。