• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:結果をファイルにちゃんと保存できない)

結果をファイルに保存できない

このQ&Aのポイント
  • プログラム(欠けている数字を三回当てるゲーム)の始まりから終了までにかかった時間を関数に引数として渡し、ファイルに保存するプログラムです。
  • 二回目以降動作させる場合はかかった時間のベスト10の結果を表示させます。
  • しかし、ベスト10までの値が塗り替えられず、桁数が非常に大きい変な値が格納されてしまいます。また、動作させるたびに変な値が入力されます。

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

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

>if((fp=fopen("dtfile","r"))==NULL) この書き方では対象ファイルはdtfileになります。 変数dtfileで指定してあるLACKNUM.DATにはなりません。 >fscanf(fp,"%lf",&best[i]); オープンするファイルが間違えているので、期待する値を読めてません。 fscanfは戻り値として読み込めた個数を返すので if ( fscanf(fp,"%lf",&best[i]) != 1 ) などとしてエラーチェックしたほうがいいです。 > if((fp=fopen("dtfile","w"))==NULL) ファイルの間違いは上の通り ファイルオープンモード"w"は上書きになるので、この時点でファイルが空になります。 >fprintf(fp," %lf\n",saikou[m]); その、空になったファイルに、この一行だけが書き込まれます。 とりあえず、気づいたののみ

関連するQ&A

専門家に質問してみよう