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

第一天剩了1534个桃子,那。。。。

第一天不是应该摘了1536个桃子吗

提问者:qq_慕标4302918 2019-11-20 22:52

个回答

  • qq_慕少2491020
    2019-12-06 16:39:19

    #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-1)/2)); //天数,所剩桃子个数

        }

        return num;

    }

    int main()

    {

        int num = getPeachNumber(1);

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

        return 0;

    }



    第9天所剩桃子1个
    第8天所剩桃子4个
    第7天所剩桃子10个
    第6天所剩桃子22个
    第5天所剩桃子46个
    第4天所剩桃子94个
    第3天所剩桃子190个
    第2天所剩桃子382个
    第1天所剩桃子766个
    猴子第一天摘了:1534个桃子。

    这才对

  • M_辉
    2019-11-21 09:14:35

    ? ??怎麼就成了1536個