#include <iostream>
#include <vector>
using namespace std;
vector<int> fac(int n)
{
vector<int> v;
int i, j, k, carry, temp;
int digit = 1;
v.push_back(1);
for (i = 2; i <= n; i++)
{
for (j = 0, carry = 0; j < v.size(); j++)
{
temp = v[j] * i + carry;
v[j] = temp % 10;
carry = temp / 10;
}
k = v.size();
while (carry)
{
v.push_back(carry);
carry /= 10;
}
}
return v;
}
int main()
{
int n = 10000;
vector<int> v = fac(n);
printf("结果是:%d ! = ", n); //显示结果
for (int i = v.size() - 1; i >= 0; --i)
{
printf("%d", v[i]);
}
cout << endl;
return 0;
}
阶乘
最新推荐文章于 2022-03-29 15:26:20 发布