下列 C 程式執行後的輸出為何? #include <stdio.h> int a=3, b=4; void fun(int a, int c) { a++; b+=c; } int main(void) { int a; a = 1; b = 2; fun(a, b); printf("%d, %d", a, b); return 0; }
A1, 2
B1, 4正確答案
C2, 6
D4, 4
答案與詳解
main 的 a 是區域變數=1,值傳遞給 fun 不受影響。b 為全域變數,呼叫 fun(1,2) 時 c=2,執行 b+=c 即 b=2+2=4。輸出 1, 4。
