比如我有一个txt文件:1.txt
里面存着1 2 3 4 5 6 7 8 9 10....
这些数字以空格隔开,并且假设不知道一共有多少个数,
请问如何用C语言打开文件,并且将数存到数组里?
#include<stdio.h>
#include<stdlib.h>
#define N 10000
int main()
{
FILE *fp;
if((fp=fopen("D:\\123.txt","r"))==NULL)//判断文件是否打开成功
{//读取D盘下,名为123的文本文件
printf("文件打开失败\n");
exit(0);
}
else
printf("文件打开成功\n");
double a[N];
for(int i=0;i<5;i++)//读取五个浮点型数据
fscanf(fp,"%lf,",&a[i]);//fscanf函数固定格式读取文本中的数据;
for(int i=0;i<5;i++)
printf("%.6lf,\n",a[i]);
fclose(fp);
}
一、编程思路。
1 以文本方式打开文件。
2 循环用fscanf格式化输入数据到数组。
3 判断fscanf的返回值,如果显示到达文件结尾,退出输入。
4 关闭文件。
5 使用数据。
二、代码实现。
设定文件名为in.txt, 存有一系列整型数据,以空格或换行分隔。
代码可以写作:
当文件内容为:
1 35 6 8 9 9
10 123 34
76 54 98
程序输出:
1 35 6 8 9 9 10 123 34 76 54 98