float 類型不能比較相等或不等,但可以比較>,<,>=,<=
用==從語法上說沒錯,但是本來應該相等的兩個浮點數由於計算機內部表示的原因可能略有微小的誤差,這時用==就會認爲它們不等。應該使用兩個浮點數之間的差異的絕對值小於某個可以接受的值來判斷判斷它們是否相等,比如用
if (fabs(price - p) < 0.000001)
來代替
if (price == p)
摘自論壇
float 類型不能比較相等或不等,但可以比較>,<,>=,<=
用==從語法上說沒錯,但是本來應該相等的兩個浮點數由於計算機內部表示的原因可能略有微小的誤差,這時用==就會認爲它們不等。應該使用兩個浮點數之間的差異的絕對值小於某個可以接受的值來判斷判斷它們是否相等,比如用
if (fabs(price - p) < 0.000001)
來代替
if (price == p)
摘自論壇
數組求和 方法一:直接一次for循環 int GetSum1(int *a,int n) { int sum=0; for (int i=0; i<n;i++) { sum+=a[i];