永发信息网

关于用"=="判断float型数据

答案:3  悬赏:70  手机版
解决时间 2021-05-14 13:52

#include <iostream>
#include <string>
using namespace std;


int main()
{
float num=4.2;

if(num==4.2) cout<<"A"<<endl;
else cout<<"F"<<endl;
}

//开始我就令 num=4.2了....为什么输出的结果还是F...难道不能用"=="判断float型数据吗

最佳答案
float 不是精确位数的,系统会给它随机加上小数后面位数的
全部回答

一般情况下,Float型数据都不是和整形数据一样的存储方式。所以它不能和整形数据那样用==来判断是否相等,你可以用这样一个式子来表示这个==

#include <iostream> #include <string> using namespace std; int main() { float num=4.2; if(num-4.2<=1e-6) cout<<"A"<<endl; else cout<<"F"<<endl; }

因为浮点数不能被精确表示,所以不要用==或!=来判断
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
所有的车都能三喷么?
龙之谷32贤者怎么加点
有什么网页可以练习打字速度?
电脑总是卡怎么处理
浏阳市国际蒙特梭利幼儿园(亚大园)怎么去啊,
一个男人忽然常常在朋友圈发表关于爱情的感慨
短信套餐中是否也包含了超Q直接回复消息的短
秭归县龙8号地址在什么地方,想今天过去办事
暴风如何旋转手机视频,MP4如何旋转视频文件的
跪求(多爱我一点)MP3格式的
QQ三国,不可靠的胡萝卜哪里有?
仙侠修真的来几本
吞口水时喉咙痛,之前没有任何感冒发烧的症状
好看的获奖动画?
从贵州安龙到湖北恩师坐卧铺车要多少钱?
推荐资讯
如果不是我的好友,转载了我空间里的相册。我
一段感情没有了性还能维持多久?
宁波哪里有塑料袋设计加工厂?
DNF为什么网络中断?
阳新县方圆工艺饰品在什么地方啊,我要过去处
安仁县安仁坚果(李大坑店)我想知道这个在什么
火箭每天有名额吗?
平桥区中国体育彩票这个地址在什么地方,我要
分了手,还可以做朋友吗?
DNF掉线,笑话
为什么我绑定QQ会变成购买超级QQ啊
谁有《素手遮天》
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?