标题:请教!题目:自然常数e可以用级数1+1/1!+1/2!+⋯+1/n!来近似计算。本题 ...
只看楼主
mingzongyu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-10-23
结帖率:0
已结贴  问题点数:20 回复次数:3 
请教!题目:自然常数e可以用级数1+1/1!+1/2!+⋯+1/n!来近似计算。本题要求对给定的非负整数n,求该级数的前n项和。我这个错哪了?我没用
#include <stdio.h>
int main(void)
{
    int i,j,n,fac;
    double sum=1;
    scanf("%d",&n);
    for(i=1;i<=n;i++){
    fac=fac*i;
    sum=sum+1.0/fac;   
   
        
    }
    printf("%.8lf",sum);
    return 0;
   
}
搜索更多相关主题的帖子: 常数 级数 给定 非负 sum 
2018-10-23 17:18
no1xijin
Rank: 9Rank: 9Rank: 9
来 自:江西
等 级:贵宾
威 望:20
帖 子:211
专家分:1207
注 册:2015-7-8
得分:20 
1.变量fac未初始化,将其初始化为1
2.变量j是多余的,可将其删除

126邮箱联系方式:no1xijin@126. com
2018-10-23 17:32
mingzongyu
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2018-10-23
得分:0 
但是当n过大时,比若说n取100,会出现溢出的现象,这是怎末回事?
2018-10-23 17:37
no1xijin
Rank: 9Rank: 9Rank: 9
来 自:江西
等 级:贵宾
威 望:20
帖 子:211
专家分:1207
注 册:2015-7-8
得分:0 
int (4字节)取值范围:-2147483648 ~ 2147483647
你用int fac存n的阶乘,超出上述数据范围,fac内存的数据自然就溢出了

126邮箱联系方式:no1xijin@126. com
2018-10-24 20:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-490617-1-1.html




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

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