黑马程序员技术交流社区

标题: 递归函数经典例题 [打印本页]

作者: Two_Lights    时间: 2016-1-10 08:28
标题: 递归函数经典例题
一个函数在它的函数体内调用它自身称为递归调用。这种函数称为递归函数。
递归函数构成条件
1)自己调用自己
2)存在一个条件能够让递归结束
3)能让问题的规模能够缩小


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


1.  递归函数
/**
*  获取年龄(递归函数的方法)
*
*  @param n 第n个人
*
*  @return 第n个人的年龄
*/
int getAge(int n){

    //定义年龄
    int age = 0;

    //第一个人
    if (n == 1) {

        age = 10;

    }else{

        //如果不是第1个人   则他的年龄是他前一个人(n-1)多2岁
        age = getAge(n-1)+2;

    }


    return age;
}







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2