猴子吃桃(C语言)

1.问题描述

   猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个。第二天早上又将第一天剩下的桃子吃掉一半,又多吃一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想吃时,发现只剩下一个了。求猴子第一天共摘了多少个桃子。

2.问题思考

  从数学角度出发,该问题从“第10天剩下的1个桃子”下手。可设当天所吃桃子数为n,前一天所吃桃子数为m,得m-(m/2+1)=n,求得m=(n+1)*2.

3.问题实现

(1)定义day,n,m为基本整型,并为day和n赋值9和1.

(2)使用while语句由后向前推出第一天摘得桃子数。

(3)输出结果。

代码实现

#include <stdio.h>

int main()

{

int day=9,m,n=1;

while(day>0)

{

       m=(n+1)*2;

  n=m;

  day--;

  }

printf("the total is %d.\n",m);

return 0;

}