#include <iostream>
#include <cstdio>
#include <cstring>
const int maxn = 3000;
int main()
{
int str[maxn];
int n;
int k;
printf("请输入n\n");
scanf("%d",&n);
memset(str,0,sizeof(str));
str[0] = 1;
for(int i=1;i<=n;i++)
{
int c=0;
for(int j=0;j<maxn;j++)
{
int s = str[j] * i + c;
str[j] = s % 10;
c = s / 10;
}
}
for(int j=maxn-1;j>=0;j--)
if(str[j]) { k = j;break;}
for(int i=k;i>=0;i--)
printf("%d",str[i]);
printf("\n");
return 0;
}
这个我想了许久。就是按照每一个数乘以相应的数。
阶乘精确值
最新推荐文章于 2019-09-01 15:54:21 发布