如何在C中将数字显示为两位数?

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

我知道当你做小数时你可以做“%。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

??

如果要将前导零填充到两个空格,则需要使用%02d

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

例如,参见以下完整程序:

 #include  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是某种程度上的最小最大长度。

请改用格式: %02d0表示使用零填充字段, 2表示字段宽度为2个字符,因此对于任何需要显示少于2个字符的数字,它将填充0。