如何让数字显示在C两个数字?(How do get numbers to display as tw

2019-07-19 01:04发布

对于C语言编程。 我要如何要显示的数字为00,01,02,03,而不是0,1,2,3,我只是直到10号之前需要0。

我知道,当你在做小数可以为整数反做“%.2f”等,但怎么样?

这里是我使用的是什么... **

printf("Please enter the hours: ");
    scanf ("%d",&hour);
printf("Please enter the minutes: ");
    scanf ("%d",&minute);
printf("Please enter the seconds: ");
    scanf ("%d",&second);
printf("%d : %d : %d\n", hour, minute, second);

}

我需要的数字显示为00:00:00

??

Answer 1:

您需要使用%02d ,如果你想填充到两个空间前导零:

printf ("%02d : %02d : %02d\n", hour, minute, second);

例如,见下面的完整的程序:

#include <stdio.h>
int main (void) {
    int hh = 3, mm = 1, ss = 4, dd = 159;
    printf ("Time is %02d:%02d:%02d.%06d\n", hh, mm, ss, dd);
    return 0;
}

其输出:

Time is 03:01:04.000159

请注意,所述%02d意味着最小的两个字符的宽度,从而它会输出123 123 。 这不应该是,如果你的值是有效的小时,分钟和秒的一个问题,但它是值得铭记,因为许多缺乏经验的程序员似乎使错误,2是某种最小最大长度。



Answer 2:

使用以下格式: %02d代替。 在0使用零指垫的场和2表示该字段是宽两个字符,所以对于需要不到2个字符的任何数字来显示,它将与一个0填充。



文章来源: How do get numbers to display as two digits in C?
标签: c digit