如何在C中对齐浮点值?

时间:2013-11-16 22:51:38

标签: c string-formatting

我想打印一个只有2位小数的浮点数,并在6个字符的空格中将其对齐。

我试图这样做,但没有奏效:

printf("%6.2f", value);

提前致谢。

2 个答案:

答案 0 :(得分:10)

您发布的内容将整个浮点数放入6个字符宽的列中,.xx占据最后一个3.如果您希望整数部分位于带有“。”的六个字符宽的列中。和这6个字符后的小数部分,其%9.2f。用于显示差异的快速示例程序

#include <stdio.h>

int main(void) {
  float x = 83.4;
  printf("....|....|....|\n");
  printf("%6.2f\n", x); // prints " 83.40"
  printf("%9.2f\n", x); // prints "    83.40"

  return 0;
}

输出:

....|....|....|
 83.40
    83.40

答案 1 :(得分:1)

你必须把 - 在%
之后

printf("%-6.2f", value);