定义
在编程中函数有一个神奇又难理解的功能,就是递归。递归就是在一个过程中要调用上一步或上几步的结果,使用递归过程的函数就叫递归函数。简单说就是函数自身调用自身(听着有点反自然,像自己举起自己)。
递归实例
德罗斯特效应
德罗斯特效应(Droste effect)是递归的一种视觉形式,即一张图片中的某部分与整张图片相同,如下:
别晕、别晕 -_-
或者在自己身前和身后都放一面镜子,深刻体会一会儿 ▄︻┻┳══━一
递归实现
接下来就用C语言递归函数来实现阶乘功能,源码如下:
1 |
|
这是程序大概的运算过程:
这里要注意给函数设置一个递归结束条件,可以是 if 判断句,不然函数就无限调用自身下去了,你之前看着镜子中的镜子中的……自己都晕,程序自然是崩溃了