阿摩線上測驗 登入

申論題資訊

試卷:107年 - 107 地特四等 程式設計概要#73697
科目:程式設計
年份:107年
排序:0

題組內容

一、下列程式皆以 C 語言語法呈現,請依據所給程式片段回答問題。

申論題內容

⑵給定下列函式,請說明 fun(123456)執行結果為何。(5 分)5c1b2c356e47f.jpg

詳解 (共 3 筆)

詳解 提供者:hchungw
給定的函數 fun 是一個遞迴函數,它對輸入的整數 x 進行操作。當 x 大於 0 時,函數會返回 x 除以 10 的餘數與 fun(x / 10) 的遞迴呼叫之和。基本上,它計算了傳入整數每一位元數位的和。
遞迴函數 fun 被調用時,以下是每一步的計算過程:
fun(123456) 返回 6 + fun(12345)
fun(12345) 返回 5 + fun(1234)
fun(1234) 返回 4 + fun(123)
fun(123) 返回 3 + fun(12)
fun(12) 返回 2 + fun(1)
fun(1) 返回 1 + fun(0)
fun(0) 返回 0(遞迴結束)
現在,將這些結果相加:
6 + (5 + (4 + (3 + (2 + (1 + 0)))))
6 + 5 + 4 + 3 + 2 + 1 + 0
21
因此,fun(123456) 的結果是 21。
詳解 提供者:Junghsi Shen
12351
詳解 提供者:nagi