有5个人围坐在一起,问第五个人多大年纪,他说比第四个人大2岁;问第四个人,他说比第三个人大2岁;问第三个人,他说比第二个人大2岁;问第二个人,他说比第一个人大2岁。第一个人说自己10岁,请利用递归法编程计算并输出第5个人的年龄。
输入
无输入。
输出
输出第5个人的年龄。
数据范围
输出int范围的整数
#include <stdio.h>
#include <stdlib.h>
int main(){
printf("%d",age(5));
}
int age(int x){
if(x==1){
return 10;
}
else{
return age(x-1)+2;
}
}
此题较为简单,若将其想象成某个数列f(n),则很容易找到其规律,即f(n)=f(n-1)+2,依据此公式可直观观察到递归规律,并以此写出即可