2.递归推算年龄问题

有5个人坐一起,问第5个人多少岁?他说比第4个人大2岁。问第4个人岁数。他说比第3个人大2岁。问第3个人,他说比第2个人大2岁。问第2个人,他说比第1个人大2岁。最后问第1个人,他说是10岁。请问第5个人多大?

 1 #include <stdio.h>
 2  
 3 int func(int n)//功能:返回第n人的岁数。
 4 {
 5     if(n == 1)
 6         return 10;
 7     else
 8         return func(n-1)+2;//推导公式第n人岁数==第n-1人岁数+2
 9 }
10  
11 int main(void)
12 {
13     printf("%d\n",func(5));
14     return 0;
15 }

 

posted @ 2018-08-12 21:19  2018年8月10日注册  阅读(434)  评论(0编辑  收藏  举报