猴子第一天摘了若干个桃子,当即吃了一半,还不解馋,又多吃了一个;第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个;以后每天都吃前一天剩下的一半多一个,到第10天想再吃时,只剩下一个桃子了。问第一天共摘了多少个桃子?
#include <stdio.h>
int func(int n)//功能:函数返回第n天未吃前的桃子数量。
{
if(n == 10)//终止条件
return 1;
else
{
return (func(n+1)+1)*2;//普通情况的推导公式:第n天的桃子量 == (第n+1天桃子量+1)*2
}
}
int main(void)
{
printf("%d\n",func(1));
return 0;
}