• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:c言語構造体に関するプログラム)

C言語構造体に関するプログラムで実行結果が意味不明な文字になる問題

このQ&Aのポイント
  • C言語構造体に関するプログラムを作成し、データファイルをコマンドラインから読み込んで平均と評価を出力する際に、意味不明な文字が表示される問題が発生しています。
  • データファイルの内容は学生の成績であり、ID、名前、スコア、成績を表す構造体で管理されています。ファイルを読み込んで平均点を計算し、成績評価を付与しようとしています。
  • しかし、プログラムを実行しても正しく平均と成績が表示されず、意味不明な文字が表示されてしまいます。解決策を教えていただける方がいらっしゃいましたら、ご教示いただけると幸いです。

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

  • ベストアンサー
  • heburusu
  • ベストアンサー率85% (140/164)
回答No.1

i++; をwhileループ終了直前(printfの下あたり)に移動してはどうでしょうか? whileに入った直後にi++してしまっているので、 fscanfする前のデータで平均値計算やprintfしているのかと思われます。

その他の回答 (1)

  • Wap58
  • ベストアンサー率33% (29/87)
回答No.2

1の方の補足 i++;をループの最後にする fscanfの戻り評価に!=EOFを書く