题目:有5个人坐在一起,问第五个人多少岁?他说比第四个人大两岁。问第四个人岁数,他说比第三个人大两岁。问第三个人,又说比第二个人大两岁。问第二个人,说比第二个人大两岁。最后问第一个,他说是十岁。请问第五个人多大?思路:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。'''def age(n): if n == 1: c = 10 else: ______________ return cprint (age(5))
A: c = age(n-1) + 2
B: c = age(n-1) + 1
C: c = age(n-1) -1
D: c = age(n) + 2
A: c = age(n-1) + 2
B: c = age(n-1) + 1
C: c = age(n-1) -1
D: c = age(n) + 2
举一反三
- 题目:有5个人坐在一起,问第五个人多少岁?他说比第四个人大两岁。问第四个人岁数,他说比第三个人大两岁。问第三个人,又说比第二个人大两岁。问第二个人,说比第二个人大两岁。最后问第一个,他说是十岁。请问第五个人多大? [br][/br] ''' 需求:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大? 思路:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。 ''' def age(n): if n == 1: c = 10 else: ______________ return c print age(5) A: c = age(n-1) + 2 B: c = age(n-1) + 1 C: c = age(n-1) -1 D: c = age(n) + 2
- 07440011:有五个人坐在一起,问第五个人多少岁?他说比第四个人大2岁。问第四个人多少岁?他说比第三个人大2岁。问第三个人多少岁?他说比第二个人大2岁。问第二个人多少岁?他说比第一个人大2岁。最后问第一个人多少岁?他说10岁。请问第五个人多少岁?根据分析,有如下公式:age(n)=10 (n=1)age(n-1)+2 (n>1)程序如下,请填空:age(int n){ int c; if(n==1) c=10; else c=______; /*递归调用*/ return c;}int main() { printf("%d", age(5)); return 0;} A:
- 编程: 有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大? 提示:程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推
- 有n个人坐在一起,问第n个人多少岁,他说比第n-1个人大两岁,问第n-1个人多少岁,他说比第n-2个人大两岁,以此类推,问第2个人多少岁,他说比第1个人大两岁,最后问第1个人多少岁?他说是10岁。使用函数的递归调用求第n个人多少岁
- 有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?