C语言:递归函数

采用递归函数解决问题的思路叫做递归;
递归函数的编写步骤:
1、编写语句解决分解后的每个小问题(假设递归函数已经可以使用)
2、在递归函数开始编写分支解决不能分解的情况(这个分支必须保证函数能结束)
#include"stdio.h"
#include"stdlib.h"


//每走100米歇着一次,共歇7次
int step(int m,int times)
{
        if(times  == 0){}
        else{
                m = m+100;
                return step(m,times-1);
        }

}

//每过一村卖鸭一半又一只
int q(int duck,int village)
{
        if(village==0)
        {
        }
        else
        {
                duck = (duck+1)*2;
                return q(duck,village-1);
        }

}


int main(void)
{        //走过7个村子,余2只鸭,求共有多少只鸭子
        int duck_leave = 2;
        int village = 7;
        int total_duck = q(2,7);
        printf("%d\n",total_duck);
        //歇了7次,余50步,求总路程
        int m = step(50,7);
        printf("%d\n",m);
        return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_39568531/article/details/80049960