【问题标题】:Printf not aligned when more than one extra digit is added当添加一个以上的额外数字时,Printf 未对齐
【发布时间】:2016-03-09 22:07:30
【问题描述】:

我正在尝试对齐输出表中的多个变量。 我目前正在使用填充,但我看不到如何正确对齐输出。 我打印变量:

printf("\n %15s", name);
printf("%15d", level);

然后我反复调用下一个函数,除非多于一位,否则一切正常。

printf("%11dhr  %.1fmn",t,t2); 

【问题讨论】:

  • @nnn 这是进入打印 t 和 t2/的 printf 函数
  • @nnn 谢谢你,你能把这个作为答案吗?

标签: c printf padding


【解决方案1】:

将变量定义为int t;float t2;(或double t2;),就像现在的%.1f 打印t2,小数点后有一个 位。这是精度说明符

为了对齐,您还需要包含 宽度说明符(要打印的最小字符数,如果可用的较少,则用空格填充)。这应该包括小数点和精度数字。因此,如果t2 的整数部分在以 2 个字符打印时适合,则需要将宽度设置为 4。对于给定的示例,这应该可以:

printf("%11dhr  %4.1fmn", t, t2);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    • 1970-01-01
    • 2022-08-23
    • 1970-01-01
    • 2020-09-24
    • 1970-01-01
    相关资源
    最近更新 更多