c语言从文件读入数据并存入数组
时间: 2024-09-08 10:00:38 浏览: 44
在C语言中,从文件读入数据并存入数组通常涉及以下几个步骤:
1. **打开文件**:首先使用`fopen()`函数打开指定的文件,如果文件不存在会返回`NULL`,需要检查这个值以确认操作是否成功。
```c
FILE* file = fopen("input.txt", "r");
if (file == NULL) {
printf("Failed to open the file.\n");
return;
}
```
2. **定义数组**:确定你要读取的数据类型,并声明适当的数组大小。例如,如果你要读整数,可以这样定义:
```c
int data[10]; // 假设我们最多读取10个整数
```
3. **读取数据**:使用`fscanf()`函数逐个元素地从文件读取数据到数组中。`fscanf()`用于格式化输入,可以根据数据类型设置格式说明符。
```c
for (int i = 0; i < sizeof(data)/sizeof(data[0]); i++) {
fscanf(file, "%d", &data[i]);
}
```
4. **关闭文件**:读取完数据后别忘了关闭文件以释放系统资源。
```c
fclose(file);
```
5. **处理错误**:可能遇到的问题包括文件结束标记(EOF)、格式错误等,需要使用`feof()`或`ferror()`来检测并处理这些情况。
完整的例子:
```c
#include <stdio.h>
int main() {
FILE* file = fopen("input.txt", "r");
if (file == NULL) {
perror("Opening file failed");
return 1;
}
int data[10];
for (int i = 0; i < 10 && !feof(file); i++) { // 防止数组溢出
fscanf(file, "%d", &data[i]);
}
fclose(file);
// 现在data数组包含了文件中的整数数据
return 0;
}
阅读全文