递归实现10的阶乘 - C++代码示例
递归实现10的阶乘 - C++代码示例
本文将使用 C++ 代码演示如何通过递归函数计算 10 的阶乘。
递归函数实现
递归函数通过自身调用来解决问题。阶乘的递归实现可以分为以下两种情况:
- 基本情况: 当 n 为 1 时,阶乘为 1,直接返回 1。
- 递归情况: 当 n 大于 1 时,阶乘为 n 乘以 (n-1) 的阶乘。
int factorial(int n) {
if (n == 1) { // 基本情况
return 1;
} else { // 递归情况
return n * factorial(n - 1);
}
}
int main() {
int n = 10; // 求 10 的阶乘
int result = factorial(n);
cout << n << '的阶乘是:' << result << endl;
return 0;
}
代码解析
factorial(int n)函数接收一个整数 n,并返回 n 的阶乘。- 当 n 等于 1 时,函数直接返回 1。
- 当 n 大于 1 时,函数递归调用自身,并返回 n 乘以
factorial(n - 1)的结果。
输出结果
10的阶乘是:3628800
总结
本文通过 C++ 代码示例展示了如何使用递归函数计算 10 的阶乘,并详细解释了递归的基本情况和递归情况。递归是一种强大的编程技巧,可以用于解决各种问题,例如树遍历、斐波那契数列等。
原文地址: https://www.cveoy.top/t/topic/np3n 著作权归作者所有。请勿转载和采集!