民國114年 第2梯次 延期考區 電腦軟體設計(JAVA)乙級 學科
第50題
以下為一C 語言撰寫之遞迴函式(Recursive Function) ,假設N≧0,而此函式是用來計算0 至N 之間的所有整數之和,則空格中應填入以下何者?
題目
以下為一C 語言撰寫之遞迴函式(Recursive Function) ,假設N≧0,而此函式是用來計算0 至N 之間的所有整數之和,則空格中應填入以下何者?
- (1) return(N-1)+Sum(N)
- (2) return(N-1)+ Sum(N-1)
- (3) return N+Sum(N-1)
- (4) while(N<>0)return N+Sum(N+1)
官方答案
(3) return N+Sum(N-1)
解析
計算0到N整數和,遞迴式為Sum(N)=N+Sum(N-1),且Sum(0)=0。每次呼叫將N加上Sum(N-1),遞減至0結束。選項3「return N+Sum(N-1)」正確。選項1、2會重複或錯算;選項4用while且傳入N+1會無限遞增造成堆疊溢位,故選3。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。