当前位置:编程学习 > C/C++ >>

递归求年龄

1 /*
 2    题目:有5个人坐在一起,问第五个人多少岁?他说比第4个人大2岁。问第4个人岁数,他说比第
 3       3个人大2岁。问第三个人,又说比第2人大两岁。问第2个人,说比第一个人大两岁。最后
 4       问第一个人,他说是10岁。请问第五个人多大?
 5
 6    1.程序分析:利用递归的方法,递归分为回推和递推两个阶段。要想知道第五个人岁数,需知道
 7          第四人的岁数,依次类推,推到第一人(10岁),再往回推。
 8  */
 9 #include<stdio.h>
10
11 int age(int n)
12 {
13     int c;
14
15     if(n==1)
16         return 10;
17
18     else
19     {
20         c = age(n-1)+2;
21         return c;
22     }   
23 }
24
25 int main()
26 {
27     //int i;
28
29     printf("his age is :%d\n",age(5));
30
31     //for(i=1;i<6;i++)
32     //printf("the %d man is :%d\n",i,age(i));
33
34     return 0;
35 }


 




摘自  zhengmian 
补充:软件开发 , C语言 ,
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,