| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 45809 人关注过本帖
标题:求1!+2!+3!+4!+……+20!
只看楼主 加入收藏
rangelee
Rank: 2
等 级:论坛游民
帖 子:17
专家分:18
注 册:2009-7-4
收藏
得分:0 
回复 7楼 cxg8790809
恩,是错了,
int sum,n,i,j;
  for (i=1;i<=20;i++)
    {
     n=1;
   for(j=1;j<=i;j++)
    {
    n=n*j;
    }
    sum=sum+n;
}




至于会不会溢出就不知道了,好久没弄C了,有点不习惯了。调试下如果溢出那就改成LONG型吧!

[ 本帖最后由 rangelee 于 2009-9-26 15:11 编辑 ]
2009-09-26 15:08
li151312595
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2009-9-26
收藏
得分:0 
long整型都 溢出···就单20!的值是2432902008176640000
2009-09-26 15:14
蠢财一刀
Rank: 1
等 级:新手上路
帖 子:2
专家分:1
注 册:2009-9-13
收藏
得分:0 
对,同意楼上的观点,编译没错,不过确实溢出了。怎么办?
2009-09-26 15:50
奋斗2010
Rank: 2
等 级:论坛游民
帖 子:14
专家分:22
注 册:2009-8-31
收藏
得分:0 
程序应该这样:
#include<stdio.h>   
 main()  
{  
    int i,j,sex,sum;  
    sum=0;  
     for(i=1;i<=20;i++)  
    {    for(sex=1, j=1;j<=i;j++)  
            sex=sex*j;  
        sum=sum+sex;  
    }  
    printf("1!+2!...+20!=%d",sum);  
}
2009-09-26 16:06
jedypjd
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:9
帖 子:1096
专家分:4969
注 册:2009-7-27
收藏
得分:0 
结果数很大

天涯无岁月,歧路有风尘,百年浑似醉,是非一片云
2009-09-26 16:09
血狼夜怨
Rank: 2
等 级:论坛游民
帖 子:13
专家分:22
注 册:2009-9-13
收藏
得分:0 
貌似没有喜欢使用函数的朋友啊...下面是我的程序,不过同样存在溢出问题.
#include<stdio.h>
#define  N   20
int func(int n)
   {
        if(n==0)
         return 1;
        return n*func(n-1);
   }
 
void main()
   {
       int func(int n);
       int i;
           int sum=0;
       for(i=1;i<=N;i++)
           sum+=func(i);
       printf("The result is:%d!\n",sum);
   }
2009-09-26 16:45
li151312595
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2009-9-26
收藏
得分:0 
怎么解决溢出的问题呢····头痛···
2009-09-26 17:24
li151312595
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2009-9-26
收藏
得分:0 
main()
{
long float a=1,b,c=0;
for(b=1;b<=20;b++)
{
a*=b;
c+=a;
}
printf("%lf",c);
getch();
}
这样就可以了···呵呵··
2009-09-26 17:37
xljiulong
Rank: 1
等 级:新手上路
帖 子:8
专家分:1
注 册:2007-6-29
收藏
得分:0 
#include<stdio.h>
#include<math.h>
void main(void)
{
    long int sum=0,sign=1,i;
    for(i=1;i<=20;i++)
    {
        sign*=i;
        sum+=sign;
    }
    printf("%ld\n",sum);
}

希望能在这条路上能有所收获
2009-09-26 18:09
m456m654
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:小飞侠
威 望:3
帖 子:783
专家分:2806
注 册:2009-9-17
收藏
得分:0 
回复 18楼 li151312595
long float??
有这个嘛??好像没有哇~
2009-09-26 18:36
快速回复:求1!+2!+3!+4!+……+20!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.016513 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved