This question already has answers here:
Closed 4 years ago.
Avoid trailing zeroes in printf()
(12个答案)
我有两个双数
然后
但我想输出
也就是说,删除无用的0。
(12个答案)
我有两个双数
a
和b
double a = 1.01, b = 1.2345678
然后
printf("%.4f %.4f", a, b)
将输出1.0100 1.2345
但我想输出
1.01 1.2345
也就是说,删除无用的0。
最佳答案
%.4f
将始终通过填充零打印高达4个小数点。
您可以删除%.4f
并使用%g
打印无填充零的精确值
克,克
双参数转换为f或e样式(或f或e表示G转换)。精度指定有效位数。如果缺少精度,则给出6位数字;如果精度为零,则将其视为1。如果转换后的指数小于-4或大于或等于精度,则使用样式e。从结果的小数部分中删除尾随的零;只有当小数点后跟至少一个数字时,才会显示小数点。
10-06 14:26