有一个包含4194304个以空格分隔的0~255范围的整数的TXT文件,其中所有数据都不换行,用C语言将其中的每个整数存入char型数组中
时间: 2024-05-02 18:18:39 浏览: 91
C语言-课后作业题.docx
假设TXT文件名为data.txt,可以使用以下代码:
```c
#include <stdio.h>
int main() {
FILE *fp = fopen("data.txt", "r");
if (fp == NULL) {
printf("Failed to open file.\n");
return 1;
}
char arr[4194304];
int i = 0, num;
while (fscanf(fp, "%d", &num) == 1) {
arr[i++] = (char) num;
// 跳过空格
fseek(fp, 1, SEEK_CUR);
}
fclose(fp);
// 打印前10个元素
for (i = 0; i < 10; i++) {
printf("%d ", arr[i]);
}
return 0;
}
```
这里使用fopen打开文件,然后使用fscanf读取每个整数并存入char数组中。由于每个整数后面都有一个空格,因此使用fseek跳过空格。最后关闭文件并打印前10个元素。
阅读全文