| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 7558 人关注过本帖
标题:求1到20阶乘的和,哪点错了,谢谢
只看楼主 加入收藏
血舞生
Rank: 2
等 级:论坛游民
帖 子:19
专家分:10
注 册:2013-3-19
结帖率:80%
收藏
已结贴  问题点数:10 回复次数:42 
求1到20阶乘的和,哪点错了,谢谢
#include<stdio.h>
int main()
{
    int a=1,tn=0,i,j;
   
   
    for(i=1;i<=20;i++)
    {
        
        for(j=1;j<=i;j++)
        {    a=a*j;
        }
     tn=tn+a;
    }
   
    printf("%d\n",tn);
}
搜索更多相关主题的帖子: 谢谢 
2013-03-25 17:11
Time_out
Rank: 1
等 级:新手上路
帖 子:12
专家分:8
注 册:2013-3-13
收藏
得分:0 
程序代码:
#include<stdio.h>
void main()
{
    int a = 1;
    for(int i = 1; i <= 20; i++)
    {
        a = a * i;
    }
    printf("%d",a);
}
好像这样就可以了

/*******************/
Pri.->Linux && C
叫我华仔就好了。
/*******************/
2013-03-25 17:27
血舞生
Rank: 2
等 级:论坛游民
帖 子:19
专家分:10
注 册:2013-3-19
收藏
得分:0 
以下是引用Time_out在2013-3-25 17:27:15的发言:

#include
void main()
{
    int a = 1;
    for(int i = 1; i <= 20; i++)
    {
        a = a * i;
    }
    printf("%d",a);
}好像这样就可以了
这个是求20的阶乘,不是求阶乘和    1!+2!+...+20!   
2013-03-25 17:29
Time_out
Rank: 1
等 级:新手上路
帖 子:12
专家分:8
注 册:2013-3-13
收藏
得分:0 
回复 3楼 血舞生
汗,那加一句楼主后面的不就可以了嘛

/*******************/
Pri.->Linux && C
叫我华仔就好了。
/*******************/
2013-03-25 17:31
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:10 
问题出在红色部分, i 的一个循环过后 a 不重新置 1 是不行滴

#include<stdio.h>
int main()
{
    int a=1,tn=0,i,j;
   
   
    for(i=1;i<=20;i++)
    {
        a=1; //加上一句就行了
        for(j=1;j<=i;j++)
        {    a=a*j;
        }
     tn=tn+a;
    }
   
    printf("%d\n",tn);
}

三十年河东,三十年河西,莫欺少年穷!
2013-03-25 17:32
江财星仔
Rank: 1
等 级:新手上路
帖 子:5
专家分:3
注 册:2012-12-14
收藏
得分:0 
tn不应该定义成整型  
2013-03-25 17:32
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:0 
回复 2楼 Time_out
你那是求阶乘,不是求阶乘和...

三十年河东,三十年河西,莫欺少年穷!
2013-03-25 17:33
血舞生
Rank: 2
等 级:论坛游民
帖 子:19
专家分:10
注 册:2013-3-19
收藏
得分:0 
以下是引用韶志在2013-3-25 17:32:18的发言:

问题出在红色部分, i 的一个循环过后 a 不重新置 1 是不行滴

#include
int main()
{
    int a=1,tn=0,i,j;
   
   
    for(i=1;i<=20;i++)
    {
        a=1; //加上一句就行了
        for(j=1;j<=i;j++)
        {    a=a*j;
        }
     tn=tn+a;
    }
   
    printf("%d\n",tn);
}
我已经定义过了,O(∩_∩)O谢谢
2013-03-25 17:39
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
等于这个 2561327494111820313 ?
2013-03-25 17:41
血舞生
Rank: 2
等 级:论坛游民
帖 子:19
专家分:10
注 册:2013-3-19
收藏
得分:0 
以下是引用江财星仔在2013-3-25 17:32:25的发言:

tn不应该定义成整型  
不是句长的问题,我把20改成3还是不行,不知道哪里错了
2013-03-25 17:44
快速回复:求1到20阶乘的和,哪点错了,谢谢
数据加载中...
 
   



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

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