当前位置: 代码迷 >> C语言 >> 再求助!
  详细解决方案

再求助!

热度:116   发布时间:2005-02-20 01:40:00.0
再求助!
请帮忙解一个题......本人还是初学者中的初学者.......
1!+2!+3!+......+10!=?
----------------解决方案--------------------------------------------------------
我给你个逻辑代码, 具体代码你自己写, 其实项目开发,就是这么个过程. 先要学会分析, 然后在写代码.
int factorial(int i);

int i = 0;
int sum = 0;
for(i = 1; i<=10; i++)
{
   sum += factorial(i);
}

// 打印结果
int factorial(int i)
{
   // code
}
----------------解决方案--------------------------------------------------------
Thank you!
----------------解决方案--------------------------------------------------------
二楼没有注意数据类型的范围,int不够,应该选用long类型!
----------------解决方案--------------------------------------------------------
那确实啊~~~~~~一语惊醒梦中人啊!
难怪我怎么该程序还是输出20000多
----------------解决方案--------------------------------------------------------
#inlcude <stdio.h>

main()

{long i,j=1,sum=0;

for(i=1;i<=10;i++)

sum=sum+j*i;

printf("sum=%ld\n",sum);

}
----------------解决方案--------------------------------------------------------

楼上的程序有误,应该是: #include <stdio.h>

long factorial(int n) { if(0==n) return 1; else return n*factorial(n-1); }

void main() { int i; long s=0; clrscr(); for(i=1;i<=10;i++){ s+=factorial(i); } printf("The sum is %ld!\n",s); getch(); }


----------------解决方案--------------------------------------------------------

#include <stdio.h>

main()

{ long i,j=1,sum=0;

for(i=1;i<=10;i++){ j=j*i; sum=sum+j;}

printf("sum=%ld\n",sum);

} 不好意思现在没有什么问题了

[此贴子已经被作者于2005-2-21 9:01:29编辑过]


----------------解决方案--------------------------------------------------------
  相关解决方案