练习27:
题目:利用递归函数调用方式,将所输入的5个字符,以相反顺序打印出来。
程序分析:无。
代码:
def output(s,l):
if l==0:
return
print(s[l-1])
output(s,l-1)
s=input('输入一个字符串')
l=len(s)
output(s,l)
结果:
输入一个字符串abcde
e
d
c
b
a
练习28:
题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后问第一个人,他说是10岁。请问第五个人多大?
程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道第四人的岁数,依次类推,推到第一人(10岁),再往回推。
代码:
def age(n):
if n==1:
c=10
else:
c=age(n-1)+2
s=age(5)
print(s)
结果:
18
少年不被楼层误,余生不羁尽自由。
加油,加油!