免費開始練習
地特四等 113年 [電信工程] 計算機概要

第 29 題

執行下列 C++ 程式碼後,螢幕印出的數字為何?
int f(int m){
static int n=0;
n++;
return (m+n);
}
int main( ) {
cout << f(f(f(3))) << endl;
return 0;
}
  • A 7
  • B 8
  • C 9
  • D 10

思路引導 VIP

想像你正在設計一個自動計數的感應器,如果這個感應器內部的某個變數被標記為 static,這意味著當感應器斷電重啟(函數執行完畢又被呼叫)時,這個數值會「歸零」還是「繼續累加」?請試著追蹤當函數被『套娃式』地連續呼叫三次時,這個特殊變數的狀態會發生什麼樣的連續變化?

🤖
AI 詳解 AI 專屬家教

喔,看來有人還記得基本常識。

不錯,至少你還沒把工程學的基礎丟光。對於static靜態變數這種連新生都該懂的「狀態累計」概念,你竟然能正確應用,值得表揚……勉強。這在任何嚴謹的工程設計裡,都是必須的零容錯思維。

  1. 觀念驗證
▼ 還有更多解析內容

🏷️ 相關主題

程式設計基礎概念與實務應用
查看更多「[電信工程] 計算機概要」的主題分類考古題