Examly題庫
原住民族考試四等考試-電子工程類科計算機概要113 年第 31 題單選題考點:全域初值考點:區域 vs 全域

執行下列 C 語言撰寫之程式,產生之輸出結果為何? #include <stdio.h> void subA(void); int a = 0, b = 4; int main() { printf("a = %d, b = %d, ", a, b); subA(); printf("a = %d, b = %d", a, b); return 0; } void subA() { int a; a = 2; b = b + 1; printf("a = %d, b = %d, ", a, b); }

Aa=4, b=4, a=2, b=5, a=0, b=5
Ba=0, b=4, a=2, b=5, a=2, b=5
Ca=0, b=4, a=2, b=5, a=0, b=4
Da=0, b=4, a=2, b=5, a=0, b=5正確答案
答案與詳解
D
正確答案
全域變數 a=0, b=4;subA 的 a 是區域變數不影響全域 a,但 b 是全域被改為 5。

逐選項解析

Aa=4, b=4, a=2, b=5, a=0, b=5全域初值✕ 錯誤
第一次 printf 印的是全域 a=0, b=4,不是 4。顯然把 a 跟 b 搞混了。
Ba=0, b=4, a=2, b=5, a=2, b=5區域 vs 全域✕ 易錯陷阱
錯在最後 a=2。subA 裡的 a 是區域變數,函式結束就消失,不會影響 main 中的全域 a(仍為 0)。
Ca=0, b=4, a=2, b=5, a=0, b=4✕ 易錯陷阱
Da=0, b=4, a=2, b=5, a=0, b=5✓ 正確

立即註冊,看完整詳解

這題的完整詳解,註冊就能看 · 每天 2 題免費

精選詳解
  • 完整逐選項解析
  • 秒殺解題技巧與破題關鍵
  • 關鍵知識表整理
  • 陷阱與易錯提醒
  • 同考點歷屆題庫連續刷題與錯題本
接著練習整份考卷查看 113 年 原住民族考試四等考試-電子工程類科《計算機概要》完整試題與解答

計算機概要 相關題目

想練更多計算機概要考古題?

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

Examly