题目:一只青蛙可以跳上一级台阶和二级台阶,如果一共要跳n阶台阶,有多少种跳法
i例如:输入:7
输出:21
思路:这里我们采用递归的思路将每一总情况都考虑,最后判断是否符合要求,如果符合就统计一次
#include <stdio.h>
int sum=0;//sum为跳法的次数
void f(int n){//n这里作为要跳的台阶数
if(n==0){//递归出口,当剩下的台阶数为零说明这种跳法可以
sum++;
}
if(n>0){
f(n-1);//跳一步
}
if(n>0){
f(n-2);//跳两步
}
}
int main(){
int i;
scanf("%d",&i);
f(i);
printf("%d",sum);//打印多少种方法
return 0;
}