问答详情
源自:5-8 递归函数(二)

关于算法的问题

前面学的好好的也都没问题

现在学吧 框架就是看得懂

可是,比如这一节作业的的12行 

就是不懂算法该怎么写 不得不看参考

我很纠结 不解决学不下去

提问者:江画 2017-01-06 10:17

个回答

  • 淺痕灬
    2017-01-06 14:46:57
    已采纳

    #include <stdio.h>

    int getPeachNumber(n)

    {

        int num;    //定义所剩桃子数

        if(n==10)

        {

          return 1;       //递归结束条件

        } 

        else

        {

            num = (getPeachNumber(n+1)+1)*2 ;   //这里是不应该用递归呢?

            printf("第%d天所剩桃子%d个\n", n, num); //天数,所剩桃子个数

        }

        return num;

    }

    int main()

    {

        int num = getPeachNumber(1);

        printf("猴子第一天摘了:%d个桃子。\n", num);

        return 0;

    }

    你反过来想就好了

    (第10天剩下的桃子+1)*2就是第9天的桃子

    (第n+1天剩下的桃子+1)*2就是第n天的桃子

    到达 n=10 就直接结束了   就这样吧  加油啦