c语言的printf格式化输出函数的%.03f,意思是排除非有效数字的0输出,仅保留3位有效数字,但是使用%.0f是只能输出0的,例如:
printf("%%.03f,%.03f\n",a);//这句可以输出0.007
printf("%%.0f,%.0f\n",a);//但是这句就只能输出0,在最新的GCC编译器中是这样
//但是在visual studio c 里又是正常的
如果你想去除浮点数a的小数部分,
可以使用
a=-6.5;printf("%%d,%d\n",(int)a);//输出为-6
如果你想最稳定地输出数字,建议用math.h的round函数