C语言:猴子吃桃问题

//猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
//第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。
//到第 10 天早上想再吃时,发现只剩下一个桃子了。编写程序求猴子第一天摘了多少个桃子。
/*
分析:从第10天向第9、8、7、6、。。。。1推算,x为当前桃子数量,当a=10时,x=1;当a=9时 2*(x+1)=4
当a=8时,2*(x+1)=2*5=10 
*/
#include <stdio.h>
int main()
{    
    int a=9,x=1;
    printf("%-10d",x);
    while (a>=1)
    {
        x=2*(x+1);
        a--;
        printf("%-10d",x);
    }
    printf("\n%d\n",x);
    getchar();
}

 

//猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。
//第二天早上又将第一天剩下的桃子吃掉一半,有多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。
//到第 10 天早上想再吃时,发现只剩下一个桃子了。编写程序求猴子第一天摘了多少个桃子。
/*
分析:从第10天向第9、8、7、6、。。。。1推算,x为当前桃子数量,当a=10时,x=1;当a=9时 2*(x+1)=4
当a=8时,2*(x+1)=2*5=10 
*/
#include <stdio.h>
int main()
{    
    int a=10,x=1;
    printf("第%d天的桃子数量:%-10d\n",a,x);
    while (a>=2)
    {
        a--;
        x=2*(x+1);
        printf("第%d天的桃子数量:%-10d\n",a,x);
        
        
    }
    printf("\n%d\n",x);
    getchar();
}

 

posted @ 2021-06-20 10:09  myrj  阅读(336)  评论(0编辑  收藏  举报