2017-02-03 2 views
0

こんにちは私は次の出力をしたい、この場合の文字は前の出力の後に8スペース出力する。これは最初の文字では機能しますが、その後のprintf文は機能しません。それは最初のprintfステートメントの直後に印刷されていて、8になるようにしようとしています。問題は、 '\ t'を使用するとプログラムで助けにならないことです.b/c私はペグをやっていますパズルのジャンプと私は正確にする必要があります。私は - と+の両方を試しましたが、うまくいきません。だから私は "A"を変数paの右側に8桁分印字したい。誰もここで何を使うべきかを知っていますか?Cでの書式設定、正当性確認

for (row =1 ; row <= 5; row++){ 
     for (column = 1; column <= row; column++) { 
      if (row == 1) { 
       printf("%+8c", pa); 
       printf("%-8"); 
       printf("A"); 
      } 
+1

8個のスペースが必要な場合は、 'printf("%8c%8c "、pa、 'A');または' 9 'です。 –

答えて

0

あなたは、スペースの具体的な金額を印刷したい場合は、あなたが行うことができ、次のnは、印刷したいスペースの数別名いくつかの整数である

printf("%*c", n, ' '); 

。だからあなたのような状況で、あなたは、あなたのif文でまず8つのスペース、A、その後、別の8つのスペース、その後、paを印刷します

printf("%c%*c%c%*c", pa, 8, ' ', 'A', 8, ' '); 

を次のことを試みることができます。