12 執行下列 C 語言程式碼,輸出為何?

(A) 2
(B) 3
(C) 20
(D) 23

答案:登入後查看
統計: A(2), B(7), C(12), D(4), E(0) #3966676

詳解 (共 1 筆)

#7448877

執行流程解析

  1. 初始值

    • p = 0

    • q = 20 (這是外層的 q)

  2. 進入 while 迴圈:條件 p < 3 成立。

    • 在迴圈內宣告 int q = 0; → 這是區域變數 q,遮蔽了外層的 q。

    • 執行 p++, q++; → 每次迴圈:p 增加 1,區域 q 由 0 變 1。

    • 迴圈結束後,區域 q 消失。外層的 q 仍然保持原值 20。

  3. 迴圈執行三次

    • 第一次:p=1,區域 q=1 (結束後消失)。

    • 第二次:p=2,區域 q=1 (結束後消失)。

    • 第三次:p=3,區域 q=1 (結束後消失)。

  4. 迴圈結束:p=3,外層 q 仍然是 20。

  5. 輸出:print("%d", q); → 印出外層的 q 值 20

ㅤㅤ

程式輸出結果:20

0
0

私人筆記 (共 1 筆)

私人筆記#8508619
未解鎖
答案:(C) 20 解析: 本題考查 ...
(共 426 字,隱藏中)
前往觀看
2
0