1091: 童年生活二三事(多实例测试)
时间限制: 1 Sec 内存限制: 128 MB
[状态] [讨论版] [提交] [命题人:admin]
题目描述
Redraiment小时候走路喜欢蹦蹦跳跳,他最喜欢在楼梯上跳来跳去。 但年幼的他一次只能走上一阶或者一下子蹦上两阶。 现在一共有N阶台阶,请你计算一下Redraiment从第0阶到第N阶共有几种走法。
输入
输入包括多组数据。 每组数据包括一行:N(1≤N≤40)。 输入以0结束
输出
对应每个输入包括一个输出。 为redraiment到达第n阶不同走法的数量。
样例输入 Copy
1
3
0
样例输出 Copy
1
3
参考代码
#include <stdio.h>
#include<math.h>
int func(int num)
{
int a, b, c, i;
if(num==1)
return 1;
else if(num==2)
return 2;
else
{
a=1, b=2;
for(i=3; i<num+1; i++)
{
c=a+b;
a=b;
b=c;
}
return c;
}
}
int main()
{
int num, count;
while(scanf("%d", &num), num!=0)
{
count=func(num);
printf("%d\n", count);
}
}