C言語についての質問です。 キーボードから入力された 5 つの文字列のうち,最も長い文字列がどれか判定するプログラムを作成したいのですが上手くいきません。

ベストアンサー

NEW! この回答はいかがでしたか? リアクションしてみよう

ThanksImg質問者からのお礼コメント

ありがとうございます! 参考にさせていただきます!

お礼日時:2023/12/3 14:58

その他の回答(2件)

取り敢えず、おかしいところ。 ・main()の中で、最初のfor()ループを抜けた後の i は 5 になっているので、その後のwhile()ループには、入りません。 ・(実行はされていませんが)while()ループの中のindexは、最初に初期化しただけなので、2番目、3番目、…と文字列を見ていくたびに、増える一方です。 ・count[]は、未初期化で使用されています。

(wof********さん) while(i<5){ i++; while ( str[i][index] != '\0') { counter[i]++; index++; } } ↓↓↓↓↓↓↓↓↓↓↓↓↓ i=0; while(i<5) { index=0; counter[i]=0; while ( str[i][index] != '\0') { counter[i]++; index++; } i++; } ~~~~~~~~~~~~~~~~ string.hをインクルードしてるのに srtlen()関数を使わないのが理解できないけど...