求1!+2!+3!+4!+5!+6!+7!+8!+9!+10!的值,用C语言编写程序!求代码!

#include<stdio.h>
main()
{
long int i,j,sum,factorial;
sum=0;
factorial=1;
for(i=1;i<=10;i++)
{
for(j=1;j<=i;j++) {factorial=factorial*j;}
sum=sum+factorial;
}
printf("sum=%d\n",sum);
}
我的这段代码错在哪里呢?
我那个算法算出来的结果是不对的~
我的结果是1444231215
肯定是太大了

在这句:sum=sum+factorial;加一句:factorial=1
factorial应该重新赋值。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2006-11-14
for(i=1;i<=10;i++)
{
factorial=factorial*j;
sum=sum+factorial;
}
还要把printf("sum=%d\n",sum); 中d前加个字母l

改成这样就OK了
第2个回答  2006-11-14
我学pascal