• ベストアンサー

数値の桁数を強制的に一致させるには

すみません、どう検索すればいいのかもわからないので、 新しく質問させていただきます。 scanfなどで読み込んできた数値に対して、 たとえば「4」だった場合はそれを「004」にする、 「15」だった場合はそれを「015」にするといった処理を加えるような 標準関数とかはありませんでしょうか。 if文などを使って行う方法はわかるのですが、 もし関数などで簡単にできる方法があるのでしたら、 ぜひご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
noname#25358
noname#25358
回答No.1

 sprintf がそれです。  使い方は通常の printf と同じですが、引数の構造が少し違います。  第1引数に出力先となる char*型変数を渡すんです。  書式文字列は第2引数に指定します。  3桁にゼロサプレスする場合は、   int i = 4;   char buffer[10];  こういう定義があったと仮定して、   sprintf( buffer, "%03d", i );  これを実行すると buffer に "004" が入ります。

Wingard
質問者

お礼

ああ、ありがとうございました>_<♪ 今一生懸命関数を作っているところでした(笑) 本当にたすかりました。 ありがとうございました。

関連するQ&A

専門家に質問してみよう