C语言,怎么把TXT文件里的数据赋值到数组里面

如题所述

一、编程思路。

1 以文本方式打开文件。

2 循环用fscanf格式化输入数据到数组。

3 判断fscanf的返回值,如果显示到达文件结尾,退出输入。

4 关闭文件。

5 使用数据。


二、代码实现。

设定文件名为in.txt, 存有一系列整型数据,以空格或换行分隔。

代码可以写作:

#include <stdio.h>
int main()
{
int v[100];//开一个足够大的数组。
int i = 0, j;
FILE *fp;//文件指针

fp = fopen("in.txt", "r");//以文本方式打开文件。
if(fp == NULL) //打开文件出错。
return -1;
while(fscanf(fp, "%d", &v[i]) != EOF) //读取数据到数组,直到文件结尾(返回EOF)
i++;
fclose(fp);//关闭文件

for(j = 0; j < i; j ++)//循环输出数组元素。
{
printf("%d ", v[j]);
}
return 0;
}

当文件内容为:

1 35 6 8 9 9 
10 123 34
76 54 98

程序输出:

1 35 6 8 9 9 10 123 34 76 54 98

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-11
首先要用fopen函数打开这个文件、然后用fread函数对文件中的数据进行读取、
例如:
if((fp=fopen("data.txt","a+"))==NULL) //打开指定文件,判断是否存在
{
printf("指定文件不存在!\n");
return;
}
while(!feof(fp)) //如果未遇到文件结束的标志,文件存在
if(fread(&stu[length],sizeof(struct StuMessage),1,fp)==1)//读取成功则返回读入的数据块个数
length++; //统计当前记录条数
fclose(fp); //关闭文件
文件中的内容将存储在stu数组中、、
你可以去看下C语言中文件的相关知识、、本回答被提问者采纳
第2个回答  2012-11-19
file函数里面找一下
相似回答