本帖最后由 yuang4074 于 2015-5-26 15:55 编辑
#include<stdio.h>
int eat(int day)
{
int x1=0,x2=1;//x2是第9天吃剩的桃子个数也就是第10天见到的桃子个数
while(day>0)//反推到第一天
{
printf("第%d天吃过后剩:%d\t",day,x2);
printf("第%d天还有:%d\t",day+1,x2);
x1=(x2+1)*2; //通过当天剩余的桃子求出前天的桃子
x2=x1;//用得出的桃子作为前天的剩余的桃子
printf("第%d天没吃时有:%d\n",day,x1);
day--;
}
printf("\n由自底向上的吃桃记录↑知:这只猴子共摘了%d只桃子。\n\n",x1);
}
int main(int argc, char *argv[]){
eat(9);//第10见到的桃子就是第9天吃剩的桃子
return 0;
} |