C语言printf浮点数输出

img


输出5位小数不应该是1234.12345吗

img


输出4位小数点不应该是1234.1234吗
为什么程序运行之后是这样啊

最后一位四舍五入

正常的,四舍五入了

四舍五入了
而且根据IDE不同和float、double类型的不同,会使用不同的方式舍入,有时是四舍五入,有时是四舍六入五凑偶
所以如果你希望按照自己想要的方式舍入,那么最好用round函数进行舍入,而不是简单的格式化字符串过程中指定小数点位数
如果对精度要求不高,怎么舍入都行,那就这样写比较简单

四舍五入

最后一位要进行四舍五入

这篇文章:C语言printf格式化输出 也许有你想要的答案,你可以看看
你还可以看下c语言参考手册中的 c语言-printf()