C++函数实现计算一个数的阶乘

递归

#include <iostream>
using namespace std;

long long factorial(int n);

int main() {

    int n;
    cin >> n;

    cout << factorial(n) << endl;

    return 0;
}

long long factorial(int n) {

    // write your code here......
    if(n==1)
        return 1;
    return n * factorial(n-1);

}

非递归

#include <iostream>
using namespace std;

long long factorial(int n);

int main() {

    int n;
    cin >> n;

    cout << factorial(n) << endl;

    return 0;
}

long long factorial(int n) {

    // write your code here......
    long long res = 1;
    for(int i=2;i<=n; i++){
        res *= i;
    }
    return res;

}

版权声明:本文为qq_43314839原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。