C语言中如何将文本文件中的数字读入

从1.text文件中读入20个数据,分别保存在一个数组s[]中;在进行数据处理完后,又将结果保存在数组w[]中,再将w[]中的数据保存入2.text中。文件中每个数据以“,”分隔,每4个数据一行。
哪位能给出代码么,中间的数据处理部分省略不用写,谢谢啦~~~

voidmain()

{

FILE*fin;

inta,b,c,d;

chars[20];

floatf1,f2,f3,f4;

fin=fopen("abc.txt","r");//打开

fscanf(fin,"%1d%1d%1d%1d",&a,&b,&c,&d);//按1位整型读前4个数

printf("a=%db=%dc=%dd=%d\n",a,b,c,d);

rewind(fin);//文件回绕到开始处

fscanf(fin,"%s",s);//按字符串读一串

printf("s=%s\n",s);

rewind(fin);//文件回绕到开始处

fscanf(fin,"%1f%1f%1f%1f",&f1,&f2,&f3,&f4);//按1位float型读前4个数

printf("%f%f%f%f\n",f1,f2,f3,f4);

flcose(fin);

}

abc.txt内容:

123456789

读到数组:

inty[20];

inti;

fin=fopen("abc.txt","r");

for(i=0;i<9;i++)fscanf(fin,"%1d",&y[i]);

扩展资料

C语言中文件的读取

fopen(打开文件)

相关函数open,fclose

表头文件#include<stdio.h>

定义函数FILE*fopen(constchar*path,constchar*mode);

函数说明参数路径包含包含打开的文件路径和文件名,参数模式字符串则代表着流形态。

模式有以下几种形态类别:

r:预期文件,该文件必须存在。

r+:可读写的文件,该文件必须存在。

w:只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

w+:可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。

a以附加的方式打开只写文件。若文件不存在,则建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-07-04
#include<stdio.h>
void main()
{
FILE *fp;
int s[20],w[20];
fp = fopen("1.txt","r");
for(int i=0;i<20;i++)
fscanf(fp,"%d",&s[i]);
fclose(fp);
/*数据处理*/
for(i=0;i<20;i++)
w[i]=s[i];
fp = fopen("2.txt","w");
for(i=0;i<20;i++)
fprintf(fp,"%d,",w[i]);
fclose(fp);
}本回答被提问者采纳
第2个回答  2008-07-04
freopen("c:\\data.txt",stdin,"r");
scanf("%d",&data);