C语言如何读取TXT文件并存入数组中?

C语言如何读取TXT文件并存入数组中?,第1张

一、编程思路。

1 以文本方式打开文件

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

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

4 关闭文件兄和。

5 使用数据。

二、代码实现。

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

代码可以写作:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

#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 = 0j <ij ++)//循者尘春环输出数组元素。

{

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

使用for循环语句+文件 *** 作函数即可文件中数据读取并存到数组中。

1、C语言标准库提供了一系列文件段唯颤 *** 作函数。文件 *** 作函数一般以f+单词的形式来命名(f是file的简写),其声明位于stdio.h头文件当中。例如:fopen、fclose函数用于文件打开与关闭;fscanf、fgets函数用于文握败件读取;fprintf、fputs函数用于文件写入;ftell、fseek函数用于文件 *** 作位置的获取与设置。一般的C语言教程都有文件 *** 作一章,可以找本教材进一步学习。

2、例程:

#include<stdio.h>

int i,a[100]

int main(){

    FILE * fp1 = fopen("input.txt", "r")//打开输入文件

    FILE * fp2 = fopen("output.txt", "w")//打开输出文件

    if (fp1==NULL || fp2==NULL) {//若打开文件失败则退出

        puts("不能打开文件!")

        rturn 0

    }

    for(i=0fscanf(fp1,"山并%d",a+i)!=EOFi++)//从输入文件连续读取整数到数组a

    for(i--)fscanf(fp2,"%d ",a[i])//把数组a逆序写入到输出文件当中

    fclose(fp1)//关闭输入文件

    fclose(fp2)//关闭输出文件,相当于保存

    return 0

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/12144631.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-21
下一篇 2023-05-21

发表评论

登录后才能评论

评论列表(0条)

保存