我试过下面的代码
int main()
{
float a = 1.0, b = 25.16;
printf("%2.1f\n", a);
printf("%2.1f\n", b);
}
我期望的结果是:
1.0
25.2
而是显示:
1.0
25.2
为什么不排队?
最佳答案
格式字符串中的第一个数字是最小字段宽度,它包括所有字符,包括小数点。在您的情况下,字段宽度需要至少为 4 才能使小数点对齐。
所以你想要
int main( void )
{
float a = 1.0, b = 25.16;
printf("%4.1f\n", a);
printf("%4.1f\n", b);
}
关于 float 的 C printf 格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35096537/