我有一个这种格式的文件:
0.4
0.3
0.2
0.4
我需要用这种格式创建一个新文件:
1 2
0.4 1 0
0.5 1 0
0.3 0 1
...
我写了这个函数
void adapta_fichero_serie(char file_input[50],char file_output[50], int np)
{
FILE* val_f=fopen(file_input,"r");
FILE* out_f=fopen(file_output,"w+");
float temp[np+1];
float tempo;
int i=0;
int uno=1;
int flag=0;
int due=2;
int zero=0;
int file_size;
fprintf(out_f,"%d %d\n", np, due );
while(!feof(val_f))
{
if(flag==0)
{
for(i=0;i<np;i++)
{
fscanf(val_f,"%f" ,&tempo);
temp[i]=tempo;
flag=1;
}
}
fscanf(val_f,"%f",&tempo);
temp[np]=tempo;
for(i=0;i<np;i++)
{
fprintf(out_f,"%f\t",temp[i]);
}
if(temp[np-1]<=temp[np])
fprintf(out_f,"%d\t%d ", uno, zero);
else fprintf(out_f,"%d\t%d\n", zero, uno);
for(i=0;i<np;i++)
{
tempo=temp[i+1];
temp[i]=tempo;
}
}
close(out_f);
close(val_f);
}
并创建格式正确的新文件,但是当我尝试读取这个新文件时,读取停止在第 315 行,但文件位于第 401 行。你能帮助我吗?我希望我的问题很容易理解!