标题:迭代问题中的0.02f
只看楼主
伍则帝
Rank: 3Rank: 3
来 自:四川省南充市高坪区
等 级:论坛游民
威 望:6
帖 子:100
专家分:34
注 册:2013-3-16
结帖率:84%
已结贴  问题点数:4 回复次数:2 
迭代问题中的0.02f
#include <stdio.h>
void mian()
{
    float rate=0.02f,a=13,b=15;//这里的0.02f中为什么要加f
    int i=0;
    while (a<b>
    {
        a=a+a*rate;
        i++;
    }
    printf("%d",i);
}
搜索更多相关主题的帖子: include 
2013-03-30 10:33
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
得分:4 
在数字后面加f,表明数据的类型。C默认带小数点的字面值(即你的0.02)是double型,但你声明的变量rate是float,这是两种不同尺寸的浮点数,当double赋值给float的时候,会出现丢失精度的可能,所以最好事先声明0.02是float,这是通过0.02f来表示的。还有诸如2u这样的,表示2是unsigned int,或2L,表示2是long int。其实这些书上都有讲,回头看看书去。

授人以渔,不授人以鱼。
2013-03-30 10:38
伍则帝
Rank: 3Rank: 3
来 自:四川省南充市高坪区
等 级:论坛游民
威 望:6
帖 子:100
专家分:34
注 册:2013-3-16
得分:0 
哦,这样呀。
刚才还有个问题
        就是goto loop和goto ex在用法有什么不同?

2013-03-30 10:42



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




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

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