以下是一个计算阶乘的递归算法:

int factorial(int n) {
    if (n == 0 || n == 1) {  // base case
        return 1;
    }
    else {  // recursive case
        return n * factorial(n - 1);
    }
}

该函数的作用是计算 n 的阶乘,即 n!。当 n 为 0 或 1 时,函数返回 1(这是递归的基本情况)。否则,函数通过递归调用自身来计算 (n-1) 的阶乘,并将结果乘以 n,最终得到 n! 的值。

例如,当 n=5 时,函数将递归计算 factorial(4)、factorial(3)、factorial(2) 和 factorial(1),并将它们的返回值相乘得到 120,即 5! 的值。

C++ 递归算法示例:计算阶乘

原文地址: https://www.cveoy.top/t/topic/n2Ou 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录