在 C 中是否有一种简单、快速的方法来转换或打印浮点数,以便输出具有两位小数的精度(不是更多),但如果有任何尾随零,它们会被删除?
例子:
100.456 -> 100.46
100.32 -> 100.32
100.7046 -> 100.7
100.00 -> 100
假设我们有float x;
并且我们执行printf(%.2f, x)
. 这将满足第一个要求,因为任何浮点数都将以 2 位小数的最大精度打印。但问题是 for x=100.00
or100.7046
我们会分别得到100.00
和100.70
。
使用“g”作为格式也不能解决问题。有任何想法吗?