在 C 语言中,计算 n 的阶乘有两种方法:递归方法:编写一个函数,函数调用自身,阶乘等于 n 乘以 n-1 的阶乘。循环方法:使用循环变量逐步计算阶乘,阶乘等于 1 乘以 2,再乘以 3,直至乘以 n。

C 语言中计算 n 的阶乘
阶乘,记作 n!,是将正整数 n 乘以小于或等于 n 的所有正整数的结果。在 C 语言中,可以通过递归或循环来计算阶乘。
递归方法
递归是一种函数调用自身的方法。对于阶乘计算,可以编写以下递归函数:
long factorial(int n) {
if (n <p><strong>循环方法</strong></p><p>循环方法通过使用循环变量来逐步计算阶乘。可以用以下代码实现:</p><div class="aritcle_card flexRow artxards">
<div class="artcardd flexRow">
<a class="aritcle_card_img" rel="nofollow" href="/ai/4275" title="Lev8"><img
src="https://img.php.cn/upload/ai_manual/001/246/273/178943671371151.png" alt="Lev8" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a>
<div class="aritcle_card_info flexColumn">
<a rel="nofollow" href="/ai/4275" title="Lev8" class="overflowclass">Lev8</a>
<p class="overflowclass">Lev8是一款面向B2B获客和增长的AI自动化平台。</p>
</div>
<a rel="nofollow" href="/ai/4275" title="Lev8" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span>
</a>
</div>
</div><pre class="brush:php;toolbar:false;">long factorial(int n) {
long result = 1;
for (int i = 1; i <p><strong>用法</strong></p><p>要使用这两个函数之一计算阶乘,可以调用函数并传入一个正整数参数。例如,要计算 5 的阶乘,可以使用以下代码:</p><pre class="brush:php;toolbar:false;">int n = 5;
long result = factorial(n);
示例输入和输出
| 输入 | 输出 |
|---|---|
| 5 | 120 |
| 10 | 3628800 |
注意:
- 如果 n 小于 0,阶乘函数将返回 -1。
- 对于较大的 n,递归方法可能会导致堆栈溢出。因此,对于较大的 n,推荐使用循环方法。
13万字C语言保姆级教程(深入):立即使用
在学习笔记中,你将探索c语言的核心概念和高级技巧!








