#include<bits/stdc++.h>
using namespace std;
int main()
{
int a[1002],b[1002],c[1002];
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
int n,m,d,w,k;
cin >> n;
for(int i=1;i<=n;i++)
{
memset(a,0,sizeof(a));
a[0]=1;
for(int j=1;j<=i;j++)
{
for(int s=0;s<=1002;s++)
{
a[s]*=j;
}
for(int s=0;s<=1002;s++)
{
if(a[s]>10)
{
k=a[s]/10;
a[s]%=10;
a[s+1]+=k;
}
}
}
for(int i=0;i<1002;i++)
{
b[i]+=a[i];
if(b[i]>=10)
{
d=b[i]/10;
b[i+1]+=d;
b[i]%=10;
}
}
}
for(int i=1002;i>=0;i--)
{
if(b[i]==0)
w=i;
else
break;
}
for(int i=w-1;i>=0;i--)
{
cout << b[i];
}
cout << endl;
return 0;
}
大佬们帮我看看吧,看看哪里错了。我还发现c数组不可删去,删了之后数据会不输出的,这是为啥?