【问题标题】:How to left pad an integer with 0's (zeros)? [duplicate]如何用 0(零)填充整数? [复制]
【发布时间】:2014-08-09 03:57:11
【问题描述】:

我希望程序返回 4 位数字,即使数字长度小于 4 位也是如此。
例如:
1 -> 0001 我试过了:

printf("%4d",number);

但它只返回三个空格,然后是第一个,它不会在前面添加 0。

【问题讨论】:

    标签: c printf


    【解决方案1】:

    默认情况下,空白用于填充,您应该在格式说明符中添加0以使填充字符0s。

    printf("%04d",number);
    

    【讨论】:

      【解决方案2】:

      除了于浩的回答,还可以动态指定位数:

      printf("%0*d", digit_count, number);
      

      【讨论】: