C语言怎么从TXT文件中读入数据?

2024-11-19 02:40:31
推荐回答(5个)
回答1:

像这种情况,有多种方法,最简单的方法是:

1.用"记事本"创建a.txt文件,保存在一个文件夹中,设保存在d:\之下

2.编写程序,并运行

#include 

int main( )

{

int a[10][4]; /*假定不超过10行,每行一定有4个元素*/

int i,j;

FILE *fp;

/*打开文件*/

fp=fopen("d:\\a.txt","r");  /*假设a.txt在d盘根目录下*/

if(!fp)exit(0);

for(j=0;j<4;j++) /*假定有j行*/

  for(i=0;i<4;i++)

  fscanf(fp,"%d",&a[j][i]);  /*读一个数据*/

/* 关闭文件 */

fclose(fp);

/*显示运行结果*/

for(j=0;j<4;j++) /*假定有j行*/

  {for(i=0;i<4;i++)

    printf("%4d",a[j][i]); 

   printf("\n");

  }

return 0;

}

以上演示了文本文件的读写操作,供你参考.

在读写文件时,文件内部有一个"指针"会悄悄地变化(但你看不到),所以读一个数据后,再读可以得到下一个数据.

回答2:

用C语言从txt文件中读取数据,可以使用C标准库文件自带的文件接口函数进行操作。
一、打开文件:
FILE
*fopen(const
char
*filename,
const
char
*mode);
因为txt文件为文本文件,
所以打开时选择的mode应为"r"或者"rt"。
二、读取文件:
读取文件应根据文件内容的格式,以及程序要求,选择读取文件的函数。可以使用一种,也可以几种混用。
常用的文件读取函数如下:
1、fgetc,
从文件中读取一个字节并返回。
适用于逐个字节读取。
2、
fgets,
从文件中读取一行。适用于整行读取。
3、fscanf,
格式化读取文件,
在已经清楚文件存储格式下,可以直接用fscanf把文件数据读取到对应类型的变量中。
4、fread,
整块读取文件,
对于txt文件比较少用。
三、关闭文件:
读取结束后,应调用fclose函数关闭文件。

回答3:

#include
int main()
{
FILE *fp=NULL;
int a[160];
int i=0;
fp=fopen("data.txt","r");
if ( !fp )
{
printf("open file error\n");
return -1;
}
while( !feof(fp) )
{
if ( fscanf( fp , "%d" ,&a[i] ) !=1 )
break ;
i++;
fgetc(fp) ;//过滤掉分隔符
}
fclose(fp);
//以下倒序输出数据
printf("i=%d\n" , i );
while( --i >= 0 )
{
printf("%d," , a[i] );
if ( i %10 == 0 )
printf("\n") ;
}
return 0;
}

回答4:

#include
void main()
{
FILE *fp;
fp=fopen("e:\\shao.txt","r");
int num,i=0,j;
int data[300];
while (!feof(fp))
{
fscanf(fp,"%d,",&num);
data[i++]=num;
}
for (j=0;j {
printf("%d ",data[j]);
}
}

回答5:

输入重定向 参考一下书吧