看看下面的兩個代碼,並告訴我爲什麼答案差異很大。浮點比較給出了不同的結果
#include<stdio.h>
int main() {
float a = 0.9;
if(a<0.9)
printf("hi"); // This will be the answer
else
printf("bye");
return 0;
}
如果我們改變0.9到0.8,那麼別人的語句印:
#include<stdio.h>
int main() {
float a = 0.8;
if(a<0.8)
printf("hi");
else
printf("bye");//this will be the answer
return 0;
}
那麼,爲什麼這個輸出改變時,我們只需要改變一個數字?
不要說得這麼富有戲劇性! _just改一個digit_!您在任何地方的任何程序中更改一位數字,輸出會發生變化。 – Shahbaz
另外,也請閱讀我的答案。起初我犯了一個錯誤,並得到-1s,但隨後編輯它,現在它包含一個共同的解決辦法,以您的問題 – Shahbaz