Cプログラミング用。数字を0、1、2、3ではなく00、01、02、03として表示するにはどうすればよいですか?.
私はあなたが小数を行うときに「%.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として表示する番号が必要です
?
2つのスペースに先行ゼロを埋め込む場合は、%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
は2文字最小幅を意味するため、123 as123
を出力することに注意してください。値が有効な時間、分、秒であれば問題になりませんが、多くの経験の浅いコーダーは、2が何らかの形で最小のand最大長であるという間違いを犯しているように見えるので、覚えておく価値があります。
代わりに%02d
形式を使用してください。 0
はゼロを使用してフィールドにパディングすることを意味し、2
はフィールドの幅が2文字であることを意味します。