搜索
查看: 263|回复: 3
打印 上一主题 下一主题

结果不是不等于1么

[复制链接]
跳转到指定楼层
楼主
 楼主| 发表于 2019-6-30 11:47:27 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
5啊哈币
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. int main()
  4. {
  5.     float a,b;
  6.     a=1.0;
  7.     b=a/3*3;
  8.     printf("%f",b);
  9.     return 0;
  10. }
复制代码

沙发
发表于 2019-6-30 16:54:54 | 只看该作者
本帖最后由 冰山qd 于 2019-6-30 17:31 编辑

结果不会等于3,根据编译器的不同结果可能是1.00000,或者0.999999,但实际存储的值‭二进制为:00111111100000000000000000000000‬

无标题.png (172.63 KB, 下载次数: 31)

无标题.png
板凳
发表于 2019-6-30 20:08:09 | 只看该作者
忘记加system("pause");了,结果是1,不过没写保留多少位,后面有一大串0。
地板
发表于 2019-7-3 15:33:35 | 只看该作者
结果是1,只是因为你加了“float”,后面有6个0,但不影响结果是1。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

广播台
特别关注
快速回复 返回顶部 返回列表