递归函数返回阶乘c语言
在 C 语言中,使用递归函数计算阶乘的示例代码如下:
```c
#include <stdio.h>
long long factorial(int n)
{
if (n == 0 || n == 1)
递归函数c语言规则 {
// 0 和 1 的阶乘均为 1
return 1;
}
else
{
// 递归计算阶乘
return n * factorial(n - 1);
}
}
int main()
{
int n = 5;
long long result = factorial(n);
printf(" %d 的阶乘为:%lld\n", n, result);
return 0;
}
```
在上述代码中,`factorial` 函数接受一个整数 `n` 作为参数,并返回 `n` 的阶乘。如果 `n` 为 0 或 1,则函数返回 1,否则使用递归方式计算阶乘,即 `n` 乘以 `n-1` 的阶乘。
在 `main` 函数中,我们调用 `factorial` 函数计算 5 的阶乘,并将结果打印输出。
需要注意的是,由于阶乘的计算结果可能非常大,可能超出整型变量的范围。因此,在上述代码中,我们使用了 `long long` 类型来存储阶乘的结果,以确保可以正确存储和返回阶乘的值。
希望这段代码能够帮助到你,如果你还有其他疑问,请随时向我提问。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论