#include
int
main()
{
int
i,n=1,sum=0;
for(i=1;i<=20;i++)
{
n=n*i;
sum=sum+n;
}
printf("%d",sum);//这里你原来出错了,你"%d,sum",把变量sum弄成字符串的一部分,这样printf函数会找字符串"%d,sum"往后的储存空间当作是sum嵌进去,结果就可能是268040729,sum之类的。
return
0;
}
#include
int
main
()
{
int
i,j,n,sum=0;
for(i=1,i<=20;i++)
//这一层循环20次,每次分别计算1!、2!.....20!。
{
for(j=1,n=1;j<=i;j++)
//这一层循环算到几的阶乘就循环几次
{
n=n*j;
}
sum
=
sum
+
n;
}
printf("%d",sum);
}
我是直接在网页里面打的代码,不要直接复制,因为没调试过,笔误难免,不保证能直接运行。但是我觉得这个逻辑肯定是对的。