n的阶乘高精度算法【阶乘】

时间:2021-05-28 03:37:40
 

C语言实验——求阶乘(循环结构)

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

题目链接:http://acm.sdut.edu.cn/sdutoj/problem.php?action=showproblem&problemid=1123

从键盘输入任意一个大于等于0的整数n,然后计算n的阶乘,并把它输出。

输入

输入任意一个大于等于0的整数n。

输出

输出n!

示例输入

3

示例输出

6
找不到很符合要求的题目,以此题代之~
代码:
n的阶乘高精度算法【阶乘】n的阶乘高精度算法【阶乘】
 1 #include<iostream>
 2 #include<string.h>
 3 #include<stdio.h>
 4 using namespace std;
 5 int main()
 6 {
 7     int n,i,j;
 8     cin>>n;
 9     int f[100001]={0};
10     f[0]=1;
11     for(i=2;i<=n;i++)
12     {
13         int up=0;
14         for(j=0;j<=100000;j++)
15         {
16             int s=f[j]*i+up;
17             f[j]=s%10;
18             up=s/10;
19         }
20     }
21     for(j=100000;j>=0;j--)
22         if(f[j]!=0)
23         {
24             for(;j>=0;j--)
25                 cout<<f[j];
26         }
27     cout<<endl;
28     return 0;
29 }
View Code