1
我正在嘗試編寫一個C程序來查找最小正整數x,以便(1/x)* x不等於1,使用單精度。而且我以雙精度再次做到這一點。我知道,對於單精度x是41,但是當我通過編寫C代碼,測試它,我仍然得到1.00000舍入浮點程序
這是我的測試代碼
int main()
{
float x = 41;
float div = 1/x;
float test = div * x;
printf("%f\n", test);
}
我得到1.0000代替0.999999
請參閱http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html - 它們只是一個數字的表示 –
@EdHeal如何獲得0.999999的值? – jqdc2224
@ jqdc2224,嘗試'printf(「%。10f \ n」,test);' –