我的问题是:
想从文件中读入double数据,然后写入文件.
比如:
input.txt:
0.0 0.0 1.0
要将这三个数写入output.txt
该如何操作。
我下面的代码是否有问题?
#include "stdio.h"
#define IN 2
#define ON 1
#define N 4
struct traningdata_type
{
int input[IN];
int output[ON];
}traningdata[N];
int main(int argc, char* argv[])
{
FILE *fp_input;
FILE *fp_output;
int j;
fp_input=fopen("c:\\1.txt","rb");
if(fp_input==NULL) printf("cant open input file!");
fp_output=fopen("c:\\11.txt","wb");
if(fp_output==NULL) printf("cant open out file!");
for(int i=0;i<N;i++)
{
for(j=0;j<IN;j++)
fscanf(fp_input,"%f",&traningdata[i].input[j]);
for(j=0;j<ON;j++)
fscanf(fp_input,"%f",&traningdata[i].output[j]);
}
for(i=0;i<N;i++)
{
for(j=0;j<IN;j++)
fprintf(fp_output,"%f",traningdata[i].input[j]);
for(j=0;j<ON;j++)
fprintf(fp_output,"%f",traningdata[i].output[j]);
}
/* for(i=0;i<N;i++)
{
for(j=0;j<IN;j++)printf("traningdata[%d].input[%d]=%f\n",i,j,traningdata[i].input[j]);
for(j=0;j<ON;j++)printf("traningdata[%d].output[%d]=%f\n",i,j,traningdata[i].output[j]);
}
*/
fclose(fp_input);
fclose(fp_output);
return 0;
}
[此贴子已经被作者于2006-11-23 19:54:52编辑过]