今天学会了自己套娃的程序——递归。
这是一个在函数内部自己套用自己的一种方法。
我这里用了一个前n项积的例子来展现递归函数!
#include <stdio.h>
//这里先定义函数
long factorial(int n) {
if (n == 0 || n == 1) {
return 1;
}
else {
return factorial(n - 1) * n;//这里用到了递归!
}
}
int main() {
int a;
printf("Input a number: ");
scanf("%d", &a);
printf("Factorial(%d) = %ld\n", a, factorial(a));
return 0;
}
递归函数是一个用处非常广的一个函数,值得注意的是递归函数的套娃位置决定了其最后的输出结果。