-1
我只是在玩弄數據類型而陷入了這個困境。 這裏任何人都可以解釋我的原因爲什麼這個程序打印「是」作爲輸出?
#include<iostream>
using namespace std;
int main() {
float a= 0.7;
if(a < 0.7)
cout<<"Yes";
else
cout<<"No";
return 0;
}
我知道那是因爲自動0.7作爲文字將是雙倍。
#include<iostream>
using namespace std;
int main(){
float a= 0.8;
if(a < 0.8)
cout<<"Yes";
else
cout<<"No";
return 0;
}
由於0.7不能完全表示爲二進制浮點數。 –
什麼是你的「困境」?你顯示的代碼有什麼問題?實際和預期產出是多少?請將所有*置於問題的正文中,標題應該是對該問題的簡短摘要。如果你還沒有,請[請閱讀如何提出好問題](http://stackoverflow.com/help/how-to-ask)。 –
https://stackoverflow.com/q/7011184/995714 https://stackoverflow.com/q/6883306/995714 https://stackoverflow.com/q/16698198/995714 –