| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 805 人关注过本帖
标题:判断条件的一个问题
取消只看楼主 加入收藏
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
判断条件的一个问题
我编写的一个程序如下:
#include<stdio.h>
main()
{
int a;
float b;
for(a=0;a<5;a++)
{
  b=(float)a/10;
  if(b==0.3) break;
  printf("%d,%f",a,b);
  printf("\n");
}
}
我想要的结果是输出:
0,0.000000
1,0.100000
2,0.200000
3,0.300000
结果他输出的结果连
4,0.400000
也出来了,那个判断条件没有起作用,但是我如果把条件
换成a==3就能输出我要的结果,那个条件该怎样设置呢?
2011-11-25 13:42
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
收藏
得分:0 
回复 2楼 hxcet
换成你的条件真的可以 运行呀,不过你的条件里的那些东西
是什么意思呢?能解释下吗?谢谢
2011-11-25 15:11
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
收藏
得分:0 
回复 6楼 hxcet
fabs(b-0.4)<1.0e-7
1.0e-7的值是0.0000007,
在这里如果b的值是0.3的话,也就是说-0.1的绝对值与0.0000001比较吗?
这里的-7可以改动吗?也就是改成-4或者-3什么的,我在程序里改了下没有什么区别,
还请解释下,谢谢,今天想到算10的阶乘,然后在结果是一位数时输出结果并输出1,
是2位数的时候输出结果并输出2,是三位数的时候输出结果并输出3,里面需要用到这样的条件,
一直不知道原理是什么,
谢谢
2011-11-25 19:53
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
收藏
得分:0 
回复 8楼 hxcet
谢谢,现在理解的差不多了,分多给你点呵呵。
2011-11-25 22:45
快速回复:判断条件的一个问题
数据加载中...
 
   



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

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