27-3 3級対策:書式指定子(printf)

07章で学んだ書式指定子を試験形式で確認する。
空白は で表現する(試験の表記に合わせる)。


27-3-1 書式指定子の構造

%[フラグ][幅][.精度]変換指定子
要素指定子意味
フラグ-左寄せ(右に空白を足す)
フラグ0ゼロ埋め(右寄せ)
数字最小表示幅(足りなければ空白または0で埋める)
精度.数字文字列:先頭から何文字か 実数:小数点以下何桁か
変換指定子d10進整数
x / X16進整数(小文字 / 大文字)
o8進整数
s文字列
f実数
c文字

27-3-2 理解度チェック

Q1. printf("[%5d]\n", 12); の出力はどれか。(空白は△)

解説を表示

正解:ウ

幅5・右寄せ(デフォルト)。12は2桁なので残り3文字を空白で埋める。

Q2. printf("[%05d]\n", 78); の出力はどれか。

解説を表示

正解:ア

幅5・ゼロ埋め。78は2桁なので残り3桁をゼロで埋める。

Q3. printf("[%3x]\n", 0x1B); の出力はどれか。(0x1B = 27)

解説を表示

正解:イ

0x1B の16進表記は "1b"(2文字)。幅3・右寄せなので先頭に空白1文字。

Q4. printf("[%-5.4s]\n", "Clangage"); の出力はどれか。

解説を表示

正解:ウ

.4 → 先頭4文字 "Clan"、%-5 → 幅5・左寄せ → "Clan△"

Q5. printf("[%7.3s]\n", "Computer"); の出力はどれか。

解説を表示

正解:エ

.3 → "Com"(3文字)、幅7・右寄せ → 残り4文字空白 → "△△△△Com"