C语言的递归函数示例
时间: 2024-11-08 22:12:57 浏览: 26
波兰表达式c语言递归简单示例.rar
在C语言中,递归函数是指在一个函数内部调用自己的情况。递归通常用于解决可以被分解为相同或相似小问题的问题,例如计算阶乘、斐波那契数列、树的遍历等。下面是一个简单的阶乘计算的递归函数示例:
```c
#include <stdio.h>
// 定义阶乘函数
int factorial(int n) {
// 基线条件(n为0或1时直接返回结果)
if (n == 0 || n == 1) {
return 1;
}
// 递归条件(将大问题分解成小问题)
else {
return n * factorial(n - 1); // 调用自身并传入较小的值
}
}
int main() {
int number;
printf("请输入一个非负整数:");
scanf("%d", &number);
printf("该数的阶乘是:%d\n", factorial(number));
return 0;
}
```
在这个例子中,`factorial`函数会一直递归调用自身,直到达到基本情况(n等于0或1),然后逐层返回结果,最终得到原函数的阶乘值。
阅读全文