1、什么是函数递归:
递归其实是⼀种解决问题的⽅法,在C语⾔中,递归就是函数⾃⼰调⽤⾃⼰。
•一个简单的函数递归:
程序会反复打印“hehe”进入死循环。因为函数一直被调用。
2、递归的限制条件:
•递归存在限制条件,当满⾜这个限制条件的时候,递归便不再继续。
• 每次递归调⽤之后越来越接近这个限制条件。 在下⾯的例⼦中,我们逐步体会这2个限制条件。
3、递归举例:
实例1:
阶乘的实现:
这样我们就可以将一个较大的问题,转化成一个较小的问题。
所以n的阶乘就等于:
n!=n*(n-1)!
(n-1)!=(n-1)*(n-2)!
直到n成为1或者是0,不能被拆解时
再稍微分析⼀下,当 n<=1 的时候,n的阶乘是1,其余n的阶乘都是可以通过上述公式计算。 n的阶乘的递归公式如下: