分类: 递归

4 篇文章

C语言练习七 斐波那契数列
斐波那契数列里,输入项数,输出具体数列斐波那契数 思考: 一、斐波那契数列特点是什么? 这个数列从第 3 项开始,每一项都等于前两项之和。 所以前两项是固定死的:F(0)=0,F(1)=1 总结性规律就是F(n) = F(n-2)+F(n-1) 程序 #include<stdio.h> int F(int n) { if(n==0) r…
C语言练习六 爬楼梯
树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数。 思考: 一、自己的第一思考方式:也就是走的数之和等于楼梯数。大概分三大类:都走1,都走2(判断是不是偶数),混合。 疑问点:但是这个混合怎么去求走法数?说明考虑有误。 再回头改变下思考逻辑,不分类了直接表示所有的情况。 从普遍到特殊流程如下: 第一次可以走1或者2,第二次可以…
C语言练习五 汉诺塔
思考: 一、Q:汉诺塔游戏的规则是什么? A:共三个柱子,确定起始柱子上有N(自己定义)个盘子,大的盘子在下小的盘子在上,从起始柱子上挪到其他柱子上,且挪动过程不可以重复。 二、找共性。从A柱子挪动到C柱子,当我没有盘子时,就不需要操作,什么都不用挪动。当我有一个盘子时,直接从A—>C。有两个盘子时,需要先A->B,A->C,B-…
C语言练习四 正整数求阶乘
输入一个正整数,输出它的阶乘 思考: 一、其实这个也就是从1开始遍历到这个数,再赋值一个 = (这种程序其实也没找到有优化的点,不过需要注意的是b初始化的时候记得赋值1) 二、这里将其延申一下, 如果是输入整数n,求1!+2!+3!+4!+5!+6!+7!+…+n! 的和。 是不是阶乘可以使用递归的方法来求呢? 这里是可以使用递归来求,注意的点在于…