前提・実現したいこと
39,82,89,68,89
83,22,100,99,14
と1行ごとに5つの数値が格納されているテキストファイルを読み込み、
39,82,89,68,89,73.4
83,22,100,99,14,63.6
のように平均値を行の最後に追加して別のテキストファイルに出力するプログラムです。
fscanfを用いた力技でなんとか読み込んで動くところまでは来たのですが、1行読み込んだ時点で終了してしまいます。
どのようにしたら複数行のデータに対応できますか?
発生している問題・エラーメッセージ
1行処理しただけで終了してしまう。
該当のソースコード
include <stdio.h>
include <stdlib.h>
int main(void)
{
FILE *fp;
FILE *fp2;
fp = fopen("inputdata.txt", "r");
fp2 = fopen("outputdata.txt", "w");
int num[5];
float ave = 0;
fscanf(fp, "%d,%d,%d,%d,%d", &num[0], &num[1], &numx[2], &numx[3], &num[4]);
fprintf(fp2, "%d,%d,%d,%d,%d,", num[0], num[1], num[2], num[3], num[4]);
ave = (num[0]+num[1]+num[2]+num[3]+num[4]) / 5.0; fprintf(fp2, "%.1f\n", ave); fclose(fp); fclose(fp2); return 0;
}
試したこと
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/20 13:09