c 语言中,阶层(阶乘)计算算法为:若给定数字为 0,返回 1。若不为 0,则将该数字与自减 1 后的数字的阶层相乘,递归调用直至减至 0。
C 语言中阶层计算
何为阶层?
阶层,又称阶乘,表示一个正整数持续乘以其所有正整数因子(包括 1)。阶层的符号表示为 "!"。例如,5 的阶层写为 5!,计算为 5 4 3 2 1 = 120。
阶层计算算法
C 语言中计算阶层的算法如下:
int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n - 1);
}
}
算法说明:
- 该算法通过递归函数 factorial() 实现。
- 若给定数字 n 为 0,则返回 1(阶层定义的基准情况)。
- 若 n 不为 0,则将 n 与 factorial(n - 1) 相乘,递归调用直到 n 减至 0。
代码示例
以下 C 语言代码示例展示了如何计算 5 的阶层:
#include <stdio.h>
int main() {
int n = 5;
int result = factorial(n);
printf("5 的阶层为:%dn", result);
return 0;
}</stdio.h>
输出:
5 的阶层为:120