- #include <iostream>
- using std::endl;
- using std::cin;
- using std::cout;
- const int N=1000;
- static int array[N];
- void main()
- {
- int number;
- cout<<"please cin the number";
- cin>>number;
- array[0]=1;
- for(int a=1;a<N;a++)
- {
- array[a]=0;
- }
- for(int b=1;b<=number;b++)// 实现1*2*3*4....*number
- {
- for(int c=0;c<=number;c++)//非0项乘以b
- {
- array[c]*=b;
- }
- for(int d=0;d<=number;d++)//数组里的每项大于9时进位
- {
- if(array[d]>9)
- {
- array[d+1]=array[d+1]+array[d]/10;
- array[d]=array[d]%10;
- }
- }
- }
- int t=N-1;
- while(array[t]==0)//统计开始不为0的位数
- {
- t--;
- }
- for(int e=t;e>=0;e--)//输出数组
- {
- cout<<array[e];
- }
- }