民國110年 地方四等 電子工程 計算機概要
第28題
考慮下列的C 語言函數宣告,然後呼叫f(4),函數的回傳值為何?int f (int x){if (x <=1) return 1;else return (x…
題目
考慮下列的C 語言函數宣告,然後呼叫f(4),函數的回傳值為何?int f (int x){if (x <=1) return 1;else return (x * f(x-1));} A. 1 B. 4 C. 10 D. 24
官方答案
- 答案:D. 24
解析
此函數為遞迴定義的階乘函數:當x小於等於1時回傳1,否則回傳x乘以f(x-1)。呼叫f(4)時依序展開為4×f(3)=4×3×f(2)=4×3×2×f(1)=4×3×2×1=24,故回傳值為24,選D。A為終止條件f(1)之回傳值,B為f(2)之部分結果,C並非任何中介計算結果,均非f(4)之值。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。
官方資料
答案以考選部公告之測驗式試題標準答案 PDF 為準。