28 執行下列 C 程式後,產生的輸出為何?
#include<stdio.h>
int x;
void unknown(int y) {
x = 3; y = 5;
}
void main() {
int z;
x = 7; z = 9;
unknown(11);
printf(“%d”, x);
}
(A)3
(B)5
(C)7
(D)11

答案:登入後查看
統計: A(138), B(21), C(134), D(15), E(0) #852261

詳解 (共 6 筆)

#1279911
X是全域變數,跟有無傳回無關
5
0
#1279450
注意喔~ 因為X是全域變數
5
1
#5622517

int x 宣告在 main() 主函式外,所以為全域變數

所以只要主函式或是副函式內都沒有重新宣告(int等等),就享有共用全域變數讀寫的權力

最後就看誰最後使用 x 變數,就是unknown()函式裡的 x = 3

因為下行就是printf()了

63367edd63539.jpg

2
0
#3317315
X為全域變數
(共 8 字,隱藏中)
前往觀看
1
0
#1105432
#include<stdio.h>
int x;
void unknown(int y) {
 x = 3; y = 5;
}
void main() {
 int z;
 x = 7; z = 9;
 unknown(11);
 printf(“%d”, x);
0
0
#1207168
會回傳X的值嗎? 我以為只有y
X還是7
0
0