【C++】ゼロ埋め(zero fill)

未分類

C++で「ゼロ埋め(zero fill)」をする方法を整理しています。毎回忘れるのでまとめておきます。

やりたいこと
ABC230 A – Atcoder Quiz 3を解きたい。
その際に、ゼロ埋めが必要でした。

解決方法
printfメソッドを下記のように利用する。
printf(“%012d”, n)
(nが12桁となるようにゼロを埋めて出力する。)

入力例

2

回答例

#include
using namespace std;

int main() {
    int n;
    cin >> n;       // 入力を受け取る

    if (n >= 42) {  // nが42以上であれば+1する
        n++;   
    }
    printf("%s%03d", "AGC", n); // 出力 AGC002

    return 0;
}

補足
“%s%03d”の%sの部分で文字列を、%03dの部分で3桁でゼロ埋めをした整数を出力しています。

コメント