Linux编程:从键盘输入一个数组,将数组写入文件再读取出来
时间: 2024-03-03 16:47:48 浏览: 104
好的,下面是一个示例程序,可以实现从键盘输入一个数组,将数组写入文件再读取出来的功能。
```c
#include <stdio.h>
#define MAX_SIZE 100
int main()
{
int arr[MAX_SIZE];
int size, i;
// 从键盘输入数组
printf("请输入数组的大小(不超过 %d):", MAX_SIZE);
scanf("%d", &size);
printf("请输入 %d 个整数:", size);
for (i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// 将数组写入文件
FILE *fp = fopen("data.txt", "w");
if (fp == NULL) {
printf("无法打开文件!\n");
return 1;
}
fprintf(fp, "%d\n", size);
for (i = 0; i < size; i++) {
fprintf(fp, "%d ", arr[i]);
}
fprintf(fp, "\n");
fclose(fp);
// 从文件读取数组
fp = fopen("data.txt", "r");
if (fp == NULL) {
printf("无法打开文件!\n");
return 1;
}
fscanf(fp, "%d", &size);
printf("从文件中读取到的数组大小为 %d:\n", size);
for (i = 0; i < size; i++) {
fscanf(fp, "%d", &arr[i]);
printf("%d ", arr[i]);
}
printf("\n");
fclose(fp);
return 0;
}
```
这个程序的基本思路是:
1. 从键盘输入一个数组;
2. 将数组写入文件;
3. 从文件读取数组。
在这个程序中,我们使用了标准的文件操作函数,包括 `fopen`、`fprintf`、`fscanf` 和 `fclose`。其中,`fopen` 函数用于打开文件,`fprintf` 函数用于将数据写入文件,`fscanf` 函数用于从文件中读取数据,`fclose` 函数用于关闭文件。
注意,在写入文件时,我们先将数组的大小写入文件,然后再将数组的每个元素写入文件,这样在读取时就可以先读取数组的大小,再依次读取每个元素了。
希望这个示例程序能够帮助到你!
阅读全文