显示十进制前的固定宽度浮点数

时间:2015-01-13 02:21:47

标签: c floating-point avr floating-point-conversion

我想显示十进制前固定宽度的浮点数。到目前为止,我设法通过获取整数部分,显示所需宽度并使用数字值前的“%03d”填充0然后显示小数部分。 我想知道是否有标准的显示方式,例如“%3.3f”。 我尝试了以下

printf("value: %3.3f", value);

但结果只是小数点前的1位数。

我怎样才能实现它?

3 个答案:

答案 0 :(得分:0)

你几乎可以实现它。 printf("value: %M.Nf", value);将在小数点后显示至少M个字符和N个数字。

printf("value: %9.3f", -123.4);   --> " -123.400"
printf("value: %9.3f", 123456.0); --> "123456.000"

答案 1 :(得分:0)

您可以使用

printf("%07.3f", value);

其中07表示打印至少7个字符,填充为零。

e.g。

printf("%07.3f", 3.3);

打印

003.300

答案 2 :(得分:-1)

使用这种格式可能会造成强大的用电风险。

双偏移= 3.14159;     printf(“ Offset:%06d。%02d sec”,(int)offset,(int)(100 *(offset-(int)offset))))