题目描述
输入一个整数n,输出n的阶乘(每组测试用例可能包含多组数据,请注意处理)
输入描述:
一个整数n(1<=n<=20)
输出描述:
n的阶乘
示例1
输入
3
输出
6
题目解析:使用int时,int表示的范围位(2^31)-1,所以计算到13!会溢出,所以结果使用long long
代码:
#include<iostream>
#include<stdio.h>
#include<string.h>
#include<math.h>
#include<algorithm>
#include<vector>
#include<map>
using namespace std;
long long jiecheng(int n){
long long mul = 1;
while(n > 0){
mul *= n;
n--;
}
return mul;
}
int main(){
int n;
while(cin >> n){
cout << jiecheng(n) <<endl;
}
return 0;
}