因为m级楼梯是上m-1级+1,把最后一级按一级走,所以有m-1级楼梯那么多种的方法可走,再把最后两级一次走,就有m-2级时那么多种方法可走,所以m级楼梯的走法 == m-1级时的走法+m-2级时的走法。就可以用递归。
解题思路:
#include<stdio.h> int fun(int n) { if(n<=2) return 1; return fun(n-1)+fun(n-2); } int main() { int m,n; scanf("%d",&m); for(int i=0;i<m;i++) { scanf("%d",&n); printf("%d\n",fun(n)); } return 0; }
0.0分
2 人评分
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码)浏览:590 |
printf基础练习2 (有点不明白)浏览:839 |
C语言程序设计教程(第三版)课后习题5.5 (C语言代码)浏览:557 |
C语言训练-亲密数 (C语言描述,反正怎么都能对)浏览:2165 |
数组输出 (C语言代码)浏览:703 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:467 |
最好的,浏览:563 |
【计算直线的交点数】 (C语言代码)浏览:918 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:455 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:582 |