• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:C言語:配列の中の文字を。。。)

C言語:配列の中の文字を改行して表示するプログラムの作成方法

このQ&Aのポイント
  • C言語で文字列中の特定の文字を検出して改行して表示するプログラムを作成する方法について教えてください。
  • 提供されたプログラムでは、strcmp関数にint型の値を渡すことができず、ポインタを使用してもエラーが発生してしまいます。
  • どのようにすれば期待される出力結果を得ることができるでしょうか?お力添えいただけると幸いです。

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

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

if(str[i]=='n') 改行 素直になりましょう。

finger_003
質問者

お礼

解答ありがとうございます。 どうやら深く考えすぎていたようです。 なるべくシンプルにいくのが大切なんですね。 ありがとうございました!助かりました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

>if(strcmp(str[i],"n")==0) >printf("\n"); のところを、 if(str[i]=='n') putchar('\n');

すると、全ての回答が全文表示されます。
  • ID10T5
  • ベストアンサー率31% (732/2312)
回答No.1

大昔C言語で鳴らした者です(--;)  if(strcmp(str[i],"n")==0) ってところがダメだと思います。strcmpの引数はchar*でないといけないのに、str[i]を渡しているところがダメかと。 治すなら  if (strncmp (&str[i], "n", strlen("n"))==0) とするといいんじゃないですかね。ちょっと汚いコードですが、動いたらきれいにしていけばいいと思います。

finger_003
質問者

お礼

解答ありがとうございます。 さっそくやってみたところ、strcmpの引数は二つまでなので、実行はできませんでしたが、 これを元に少し変えてみたところ動くようになりました。 ありがとうございました。

すると、全ての回答が全文表示されます。
このQ&Aのポイント
  • 2017年製のタブレットを再使用したいが、重要なシステムアプリを削除してしまった。
  • デバイスの復元方法が分からず、中国語の画面が表示されているが、ハードテストの状態である。
  • 型番が不明なため、Lenovoサポートにも問い合わせられず、実用的な解決策を探している。
回答を見る

専門家に質問してみよう