美文网首页
6月5日 关于递归函数

6月5日 关于递归函数

作者: 牛牛很牛 | 来源:发表于2016-06-05 09:19 被阅读0次

    递归,递归就是一个函数在它的函数体内调用它自身。执行递归函数将反复调用其自身,每调用一次就进入新的一层。

    递归函数特点:

    每一级函数调用时都有自己的变量,但是函数代码并不会得到复制,如计算5的阶乘时每递推一次变量都不同;

    每次调用都会有一次返回,如计算5的阶乘时每递推一次都返回进行下一次;

    递归函数中,位于递归调用前的语句和各级被调用函数具有相同的执行顺序;

    递归函数中,位于递归调用后的语句的执行顺序和各个被调用函数的顺序相反;

    递归函数中必须有终止语句。

    一句话总结递归:自我调用且有完成状态。

    例题

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

    #includeint getAge(int n){

    if(n==1){

    return 10;

    }else{

    int age=getAge(n-1)+2;

    return age;

    }

    }

    int main()

    {

    int age=  getAge(5);

    printf("第5个人的年龄是%d岁",age );

    return 0;

    }

    相关文章

      网友评论

          本文标题:6月5日 关于递归函数

          本文链接:https://www.haomeiwen.com/subject/ehqrdttx.html