この例のように、Cの一連の数値をprintf()に揃える必要があります。
-------1
-------5
------50
-----100
----1000
もちろん、それらの間には数字がありますが、目前の問題には関係ありません...ああ、ダッシュをスペースと見なし、ダッシュを使用したので、私が欲しいものを理解しやすくなりました。
私はこれを行うことができるだけです:
----1---
----5---
----50--
----100-
----1000
またはこれ:
---1
---5
--50
-100
1000
しかし、これは私が望んでいることではなく、printf()だけを使用して最初の例に表示されているものを実現することはできません。それは可能ですか?
編集:
申し訳ありませんが、私は急いでいて、自分自身をうまく説明しませんでした...私の最後の例とすべての提案(「%8d」のようなものを使用する)は機能しません。そのことについては、必ずしも1000、さらには100または10に達するとは限りません。
表示する桁数に関係なく、最大数の先頭のスペースは最大4つだけにします。1から1000(A)と1から100(B)の数字を表示する必要があり、両方に「%4d」を使用すると、次のようになります。
A:
---1
....
1000
これが私が欲しい出力です...
B:
---1
....
-100
これは私が望む出力ではありません、私は実際にこれが欲しいです:
--1
...
100
しかし、私が言ったように、私が印刷しなければならない数字の正確な数はわかりません、それは1桁、2、3、またはそれ以上である可能性があり、関数はすべてのために準備されるべきです。そして、4つの追加の先頭スペースが必要ですが、それはそれほど重要ではありません。
編集2: 私が望むもの、私がそれを必要とする方法、それは不可能であるようです(DavidThornleyとBlankXavierの回答と私のコメントを確認してください)。いつもありがとうございました。