计算1—100之间是13的倍数的数值之和!(共用2种方法)!- -| 回首页 | 2005年索引 | - -八进制转换为十进制!!!

求1!+2!+3!+......+k!之和!(共用5种方法)!

                                      

求1!+2!+3!+......+k!之和!

方法1:
main()
{
 int i = 1;
 int s = 0;
 int t = 1;
 for(i = 1;i<=20;i++)
 {
   t = t * i;
   s = s + t;
 }
 printf("%d",s);
}

方法2:
main()
{
long fact(int n);
int n,i,s=0;
printf("input the number n:\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
s=s+fact(i);
printf("the answer is :%u",s);
}


long fact(int i)
{
if(i<0)
{printf("error");
exit(-1);
}
if(i<=1)
return(1);
else
return(i*fact(i-1));
}

方法3:
main()
{
int a,b,c,d;
for(a=1;a<=20;a++)
{
c=1;
for(b=1;b<=a;b++)
{
c=c*b;
}
d=d+c;
}
printf("%d",d);
}

方法4:
main()
{
int a,c,d;
c=1;
for(a=1;a<=20;a++)
{
c=c*a;
d=d+c;
}
printf("%d",d);
}

方法5:
main()
{
int abc(int a);
int a,c,d;
for(a=1;a<=20;a++)
{
c=abc(int a);
d=d+c;
}
printf("%d",d);
}

【作者: 刘加开】【访问统计:】【2005年03月16日 星期三 16:53】【 加入博采】【打印

Trackback

你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=951262

回复

- 评论人:secball   2005-11-13 23:35:39   

呵呵,当K〉10时,甚至到20时怎么办,还能这么算呀?你有没亲自验证过啊?有哪种变量能承受得了20的阶乘?

- 评论人:专业人士   2005-03-16 21:42:33   

吗地,简直是误人子弟,想找篇实习论文,老是被你这狗屁挡路,我靠,让我什么都看不到,我要是见你不杀了你算我没种。吗地

- 评论人:aspbuy   2005-03-16 21:42:31   

这篇文章确实不错,感谢作者

评论内容: