C中的字符串格式化

String formatting in C

我是 C 的新手,目前正在研究字符串格式。特别是如何将小数格式化为有 2 个前导位。因此,您会将 1、20、300 变成 001、020、300。我知道有 %d,但我还没有找到解决方案!

这可能是一个例子

#include <stdio.h>
int main(){
    int one = 1;
    int two = 2;
    int twenty = 20;
    printf("One: %03d\n", one);
    printf("Two: %03d\n", two);
    printf("Twenty: %03d\n", twenty);
}

输出:

One: 001
Two: 002
Twenty: 020

printf("%02d\n", 1); // 输出:01

printf("%03d\n", 1); // 输出:001

printf("%04d\n", 1); // 输出:0001

printf("%05d\n", 1); // 输出:00001

printf("%06d\n", 1); // 输出:000001

.....