C++实现阶乘函数

C++实现阶乘函数

阶乘函数是数学中一项基础的运算,它表示一个正整数n的阶乘为n!,即n*(n-1)(n-2)…*1。在C++中,我们可以通过递归或循环的方式来实现阶乘函数。

下面是一个利用循环实现的C++阶乘函数:

#include 
using namespace std;

long long factorial(int n) {
    long long result = 1;
    for (int i = 1; i <= n; i++) {
        result *= i;
    }
    return result;
}

int main() {
    int n;
    cout << "请输入一个正整数: ";
    cin >> n;
    if (n < 0) {
        cout << "输入有误" << endl;
    } else {
        cout << n << "! = " << factorial(n) << endl;
    }
    return 0;
}

以上代码中,我们定义了一个函数factorial,它接受一个整数参数n,返回n的阶乘。在函数中,我们使用for循环从1到n累乘,最终返回结果。

在主函数中,我们通过用户输入一个整数n,并调用factorial函数计算其阶乘,最终输出结果。

需要注意的是,由于阶乘的结果可能非常大,因此我们在这里使用long long类型来存储结果,以避免溢出。

综上所述,我们可以通过简单的循环来实现C++中的阶乘函数,并且通过使用long long类型来存储结果,可以支持更大的计算范围。

你可能感兴趣的:(c++,算法,开发语言,编程)