#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型数据吗
#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型数据都不是和整形数据一样的存储方式。所以它不能和整形数据那样用==来判断是否相等,你可以用这样一个式子来表示这个==
#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; }