| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 518 人关注过本帖
标题:为什么每次输出都一样,计算e的近似值
只看楼主 加入收藏
GKL932939348
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:21
专家分:9
注 册:2013-11-5
结帖率:85.71%
收藏
已结贴  问题点数:10 回复次数:4 
为什么每次输出都一样,计算e的近似值
#include <stdio.h>
void main()
{
    for(int i = 10000 ; i <= 100000 ; i += 10000 )
    {
        float e = 1 , item = 1;
        for(int j = 1 ; j <= i ; j++)
        {
            item = item / j;
            e += item;
        }

        printf("e : %f\n",e);
    }

}
搜索更多相关主题的帖子: include 
2014-03-23 11:53
韶志
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:斗气大陆
等 级:贵宾
威 望:44
帖 子:2223
专家分:13592
注 册:2013-3-22
收藏
得分:5 
  因为你的精度已经够大了...  所以结果精确到了2.718282之后去了

你试试把for(int i = 10000 ; i <= 100000 ; i += 10000 ) 换成 for(int i = 1; i <= 10; i++)

这样就可以看到不同的精度了

三十年河东,三十年河西,莫欺少年穷!
2014-03-23 12:17
ljx小子
Rank: 8Rank: 8
来 自:星星
等 级:蝙蝠侠
威 望:2
帖 子:222
专家分:916
注 册:2013-10-7
收藏
得分:5 
你i第一次就是10000了,对于float来保存的精度来不能显示出差异

。。。。。。。。。。。
2014-03-23 12:21
GKL932939348
Rank: 1
来 自:重庆
等 级:新手上路
帖 子:21
专家分:9
注 册:2013-11-5
收藏
得分:0 
回复 3楼 ljx小子
那应该用什么类型 double?

2014-03-23 13:50
ljx小子
Rank: 8Rank: 8
来 自:星星
等 级:蝙蝠侠
威 望:2
帖 子:222
专家分:916
注 册:2013-10-7
收藏
得分:0 
高精度存储得用数组模拟,单靠浮点型数据是不行的。

。。。。。。。。。。。
2014-03-23 16:13
快速回复:为什么每次输出都一样,计算e的近似值
数据加载中...
 
   



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

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