- ベストアンサー
C言語のprintfで桁数をそろえる
次ので桁数をそろえると書いてあったけどやってみたらできなかった。 コンパイラはMS visual c++バージョンはおそらく7.1.3019 #include "stdafx.h" int _tmain(int argc, _TCHAR* argv[]) { int a; scanf("%d",&a); printf("a=%3d\n",a); return 0; }
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
特定の処理系に依存するものではないので、一般的な(ANSI C)規則でで書きます。 %3d は、「最低3桁まで出力する」という意味であって、4桁入力すれば 4桁になります。 32ビット int の範囲が -2147483648~2147483647 ですから、 %10d にして、最大の10桁まで表示するようにすればそろいます。
その他の回答 (3)
- yumichongu
- ベストアンサー率31% (10/32)
回答No.4
%3dは「少なくとも3桁です」 「やってみたけどできいなかった」 では質問の内容が回答者に把握してもらえません。 あなたが2桁入力したかもしれませんし、4桁かもしれません。 質問する側の人間の発言として、中学生のような言葉使いを改めてください。
- επιστημη(@episteme)
- ベストアンサー率46% (546/1184)
回答No.2
"できなかった"とは? 桁がそろわなかったのですか? 要するに、何が訊きたいのですか?
- don_go
- ベストアンサー率31% (336/1059)
回答No.1
4桁以上の数値を入力したわけでは無いですよね?
質問者
補足
4桁以上の数値を入力したわけです。