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;

}
上一篇:分数(蓝桥杯省赛2018C/C++A组第一题)


下一篇:STM32 MDK片外FLASH下载算法制作 —— 基于QSPI(W25Q32)