出力時の桁数の調整
printf関数による表示の際は、書式文字列に*を埋め込み、それに対応する引数を渡すことで表示桁数を指定できる。
▷123を少なくともi桁で表示
for(i = 2; i < 5; i++){
printf("%*d\n", i, 123);
}
実行例
123(少なくとも2桁)
123(少なくとも3桁)
□123(少なくとも4桁)
※実際には半角スペース
▷3.141592を6桁、小数点以下をi桁で表示
for(i = 2; i < 5; i++){
printf("%*.*f\n", 6, i, 3.141592);
}
実行例
□□3.14(小数点以下2桁)
□3.142(小数点以下3桁)
3.1416(小数点以下4桁)
※実際には半角スペース
▷AとBのあいだにi個の空白文字を表示
for(i = 0; i < 5; i++){
printf("A%*sB\n", i, "");
}
実行例
AB(空白文字を0個)
A□B(空白文字を1個)
A□□B(空白文字を2個)
A□□□B(空白文字を3個)
A□□□□B(空白文字を4個)
※実際には半角スペース
▷ABCDEの先頭i文字を表示
for(i = 0; i < 5; i++){
printf("%.*s\n", i, "ABCDE");
}
実行例
□(先頭の0文字)
A(先頭の1文字)
AB(先頭の2文字)
ABC(先頭の3文字)
ABCD(先頭の4文字)
※実際には半角スペース