私はファイルから読み取る小さなプログラムを書き込もうとしています。次の番号を含むファイル(random.dat)からこのコードを試しました。
0.575 0.235
0.456 0.322
私が書いたコードは次のとおりです。
#include <stdio.h>
#include <stdlib.h>
#define N 2
int main (void) {
FILE *fp;
int i, j;
double x,y,data[N][N] = {{0}};
if ((fp = fopen("random.dat", "r")) == NULL ) {
printf("Error\n");
exit(EXIT_FAILURE);
}
fp = fopen("random.dat","r");
printf("\n");
for (i=0;i<N;i++){
fscanf(fp,"%lf",&x);
for(j=0;j<N;j++){
fscanf(fp,"%lf",&x);
data[i][j] = x;
printf("data[%d][%d]=%lf\n",i,j,data[i][j]);
}
}
printf("\n");
fclose(fp);
return(0);
}
コードはうまく書かれていますか?
端末が次のように書き込む理由がわかりません。
data[0][0]=0.235000
data[0][1]=0.465000
data[1][0]=0.322000
data[1][1]=0.322000
それ以外の:
data[0][0]=0.575000
data[0][1]=0.235000
data[1][0]=0.465000
data[1][1]=0.322000
何か案が?ありがとう!