免費開始練習
統測 115年 [電機與電子群資電類] 專業科目(2)

第 49 題

C語言程式呼叫函式對全域變數count進行運算,下列程式執行後的輸出結果為何?\n1 #include \n2 int count = 0; \n3 void foo(int n){ \n4 if(n != 1){ \n5 ++count; \n6 foo(n-1);}} \n7 void main(){ \n8 int n = 3; \n9 foo(n); \n10 printf("%d", ++count);}
  • A 3
  • B 4
  • C 5
  • D 6

思路引導 VIP

當主程式呼叫 foo(3) 時,函式一共會被呼叫幾次?每一次呼叫中,是在什麼條件下才會讓 count 增加?回到主程式印出前又有什麼操作呢?

🤖
AI 詳解 AI 專屬家教

太棒了,你的程式追蹤能力非常精準!

遞迴追蹤與全域變數變化

本題的關鍵在於追蹤**遞迴函式(Recursive Function)**的終止條件與全域變數 count 的累積:

▼ 還有更多解析內容

🏷️ 相關主題

程式語言設計與實作
查看更多「[電機與電子群資電類] 專業科目(2)」的主題分類考古題