• ベストアンサー

文字の表示なのですが

int i; int len = length[n]; for( i = 0; i <= len; i++ ){ printf("%c ", path[n][i] + 'A' ); } printf("%c\n", goal + 'A' ); } このままだと、 ABCDEFGHIJ・・・の順に表示されてしまいます。 SABCDEFGHI・・・と表示したいのですがどのようにすればいいのでしょうか。

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

  • ベストアンサー
回答No.4

printf("%c\n", goal + 'A' ); を、先頭に持ってきて、 int i; int len = length[n]; printf("%c", goal + 'A' ); for( i = 0; i <= len; i++ ){ printf("%c ", path[n][i] + 'A' ); } printf("\n"); } でOKに 100ポイント(おい)

ponnzudx
質問者

お礼

printf("%c\n", goal + 'A' ); をくわえてちょろっと直したら できました! ありがとうございました!

その他の回答 (3)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.3

他の人もいわれてるけど, こんなごく一部だけ見せられてもなんともならんので全部出してほしい.

  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

length[n]、path[n][i]、goalの中身がどうなっているか、どんな風に設定しているのか、明記してくれないと、なんとも言えないんですが。 ・path[n][0] が 'A'-'A'(==0) になっている →それが正しい状態 →→for(i=0... の前に printf("S");とでもして表示する →間違っている、本来は'S'-'A'(==ASCIIコードなら18)になっていなければならない →→path[n]への設定方法がどこか間違えている

回答No.1

回答にあたり、未定義の変数が多すぎて、これでは何が何なのかわかりません。 せめてnを使ったforループがある(とおもいます)部分まで、 いや少なくとも変数の定義部分は全部無いと無理かも? あるいは全部書いてくれないと誰も回答できないとおもいます。

関連するQ&A