这是题目
供参考:
#include <stdio.h>
int main()
{
__int64 n,sum,i,a;
scanf("%I64d", &n);
for (i = 1,a = 1,sum = 0;i <= n; i++){
a *= i;
sum += a;
}
printf("%I64d",sum);
return 0;
}
第一行int 改成long long ,int类型太小了,20的阶乘会溢出