单精度实数的有效位数一般为7位
那么为什么y的输出是-789.1222986,7位有效位数不应该是-789.1234吗??
float x=123.4567,y=-789.1234; printf("%f\n%f",x,y);
浮点数存储方式决定了存储的数据不是精确的,可能有更多的余数,我机器输出是-789.123413,
通过格式化输出你想要的位数
printf("%.4f\n%.4f",x,y);