首先C答案中if里面不是比较运算符 == ,而是赋值运算符 =
float f = 0.00000000001; if( f > -0.0000001 && f < 0.00000001 )//比较语句 { cout << "123" << endl; } f = 123456720; //浮点型有效值7位(其余的都不准确) f = f + 20;//非常大的数与一个小的数相加无意义 cout << f << endl;//结果:1.23457e+08 printf("f = %f\n",f); //结果:f = 123456736.000000 而不是f = 123456740.000000 小数点前两位数是随机的