刷题刷出新高度,偷偷领先!偷偷领先!偷偷领先! 关注我们,悄悄成为最优秀的自己!

单选题

小猴子第一天摘下若干桃子,当即吃掉一半,又多吃一个。第二天早上又将剩下的桃子吃一半,又多吃一个。以后每天早上吃前一天剩下的一半另加一个。到第5天早上猴子想再吃时,发现只剩下一个桃子了。问第一天猴子共摘多少个桃子?

这个问题可以用递归来解决,代码如下:

def peach(day):

if day==1:

return 1

return (peach(day-1) + 1)*2

s=peach(5)

print(‘一共有%d只桃子’%(s))

请问第2行的"if day == 1"代码起到的作用是?( )

A
结束递归的边界条件
B
开始递归的边界条件
C
调用自身
D
递归过程中的变化
使用微信搜索喵呜刷题,轻松应对考试!

答案:

A

解析:

【喵呜刷题小喵解析】:“if day==1:”这一行代码表示的是递归的边界条件,也就是当天数为1时,函数直接返回1,不再进行递归调用。这是递归函数中的基础情况,用来结束递归,避免无限递归。在这个问题中,当猴子只剩下一个桃子的时候,也就是第5天早上,函数直接返回1,然后逆向计算出第一天摘下的桃子数量。因此,选项A“结束递归的边界条件”是正确的。
创作类型:
原创

本文链接:小猴子第一天摘下若干桃子,当即吃掉一半,又多吃一个。第二天早上又将剩下的桃子吃一半,又多吃一个。以后

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。

让学习像火箭一样快速,微信扫码,获取考试解析、体验刷题服务,开启你的学习加速器!

分享考题
share