Examly題庫
國中教甄|資訊科技資訊科技102 年第 38 題單選題

下列為一程式虛擬碼: public class Fib { public static void main(String[] arg) { int a = 10; System.out.print(re(a)); } public static int re(int a) { if ((a == 1) | (a == 0)) { return 1; } return (re(a - 1) + re(a - 2)); } } 執行後所回傳的值為何?

A8
B35
C89正確答案
D144
答案與詳解
C
正確答案
此題考查遞迴函式的執行追蹤,程式碼計算的是自訂起始值的費氏數列,帶入 a=10 逐步展開後結果為 89。

逐選項解析

A8✕ 錯誤
8 為 re(5) 的回傳值,屬推算過程之中間值或項數計算錯誤。
B35✕ 錯誤
35 並非費氏數列之數值,可能是計算 re(8)=34 時發生加法錯誤。
C89✓ 正確
D144✕ 錯誤

立即註冊,看完整詳解

這題的完整詳解,註冊就能看 · 每天 2 題免費

精選詳解
  • 完整逐選項解析
  • 秒殺解題技巧與破題關鍵
  • 關鍵知識表整理
  • 陷阱與易錯提醒
  • 同考點歷屆題庫連續刷題與錯題本
接著練習整份考卷查看 102 年 國中教甄|資訊科技《資訊科技》完整試題與解答

資訊科技 相關題目

想練更多資訊科技考古題?

Examly 收錄 50 萬+ 道歷屆題目,每題都有像這樣的精選詳解。免費下載,立即開練。

Examly