#include<strio.h>
int fun(int i)
{
if(10==i)
return 1
return (fun(i+1)+1)*2
}
int main()
{
printf("%d\n",fun(1));
}
因为只知道猴子第十天剩了一个桃子,只能反方向推导,
1 fun(1)
(fun(1)+1)*2 fun(2)
(fun(2+1)+1)*2 fun(3)
这样就很容易的用递归算出
递归的思想就是:什么时候开始(when),什么时候结束(when),每次递归需要干嘛(what)
int i=1;
void list(int i )
{
if(i<=100)
return;
list(i+1)
printf("%d\n",i);
}
递归1到100;并且反着打印, 每次调用list()函数,最后在打印。就反着打印,最后从最上面的100打印,打印到1