例子:def pow(x,n):if n==0:return 1else:return x*pow(x,n-1)既然結束條件返回1那為什么還能打印出正確結果而不打印1?難道return 1類似C語言中的return 0(結束)嗎?
1 回答

斯蒂芬大帝
TA貢獻1827條經驗 獲得超8個贊
你沒有搞懂遞歸是什么。這個return 1的結果是返回給它的上層遞歸中調用它的那條語句的,即return x*pow(x, n-1)這條語句,當n=0時pow(x, n-1)的值就是1。這條語句本身也是一條返回語句,它繼續將結果返回給上層遞歸的調用者,直到最外層調用者。
添加回答
舉報
0/150
提交
取消