N的阶乘

N的阶乘 

Problem Description

计算一个正整数的阶乘,数据范围[1,1000]

Input

每行一个整数N

Output

每行一个整数,表示N的阶乘

Sample Input

2
5

Sample Output

2
120
 1 #include<stdio.h>
 2 int main()
 3 {
 4     void fun(int n);
 5     int i,n,str[1000];
 6     while(scanf("%d",&n)!=EOF)
 7     fun(n);
 8       return 0;
 9 }
10 void fun(int n)
11 { int str[10000],i;
12  str[0]=1;
13  for(i=1;i<10000;i++)
14  str[i]=NULL;
15     int e=0,a=0,j,k=n;
16     for(i=1;i<=n;i++)
17     {for(j=0;j<=k;j++)
18     {
19         e=str[j]*i+a;
20         a=e/10;
21         str[j]=e%10;
22     }
23     k++;
24     }
25     while(1)
26     {
27         if(str[k]==0)k--;
28         else break;
29     }
30     for(i=k;i>=0;i--)
31     printf("%d",str[i]);
32     printf("\n");
33 }
View Code

 

posted @ 2019-07-19 15:49  龚政  阅读(495)  评论(0编辑  收藏  举报