admin 管理员组文章数量: 887021
2024年1月23日发(作者:mysql如何查询表信息)
c语言用递归法计算n的阶乘
在C语言中,可以使用递归法来计算一个数的阶乘。例如,要计算n的阶乘,可以使用以下代码:
```c
#include
int factorial(int n) {
if (n == 0) {
return 1; // 0的阶乘为1
} else {
return n * factorial(n - 1); // 递归调用
}
}
int main() {
int n;
printf('输入一个整数:');
scanf('%d', &n);
printf('%d的阶乘为:%d', n, factorial(n));
return 0;
}
```
在这个代码中,我们定义了一个函数`factorial`,它接受一个整数参数n,返回n的阶乘。如果n为0,则返回1(因为0的阶乘 - 1 -
为1)。否则,递归调用`factorial`函数,传入n-1作为参数,并将其乘以n后返回。
在`main`函数中,我们首先读取一个整数n,并将其传入`factorial`函数中计算阶乘。最后,我们输出n的阶乘的值。
这种方法的优点是代码简单易懂,但当n很大时会导致栈溢出。因此,在实际编程中要注意选择合适的算法来计算阶乘。
- 2 -
版权声明:本文标题:c语言用递归法计算n的阶乘 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.freenas.com.cn/free/1705983466h496649.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论