#include
int f(int x)
{
if(x==0)return 0;
else{return f(x-1)*2+1;
}
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF&&n>1&&n<30){
printf("%d\n",f(n));
}
return 0;
}
#include<stdio.h>
// 递归函数
int fun(int day){
if(day == 1) //如果倒数倒最后一天
return 1; //则返回 1 ,代表最后一天的数据
else{
return (fun(day-1)+1)*2; //否则,计算前一天桃子数
}
}
int main(){
int date = 0; //总天数
int num= 0; //总桃子数
printf("只剩一个桃子是第几天呢?:");
scanf("%d",&date);
num = fun(date); //递归桃子数
printf("第一天有%d个桃子",num);
return 0;
}
递归函数,其实很好理解的。就是在一个回调函数里面,再设置一个一个回调函数。