#include<stdio.h>
int main()
{
int i,j,N;
int s;
int sum=0;
scanf("%d",&N);
for(i=1;i<=N;i++)
{
s=1;
for(j=1;j<=i;j++)
{
s*=j;
}
sum+=s;
}
printf("%d",sum);
return 0;
}
变量s在声明时初始化和在第一个循环时初始化,为什么会导致答案不同