📅  最后修改于: 2023-12-03 14:39:40.997000             🧑  作者: Mango
在C语言中,输入和输出是非常重要的基本操作。问题13是另一个与输入和输出相关的问题,我们将要讨论如何在C程序中读取和写入文件。
要在C程序中读取文件,我们使用fopen
函数来打开文件,并使用fscanf
函数来读取文件的内容。
下面是一个示例代码,演示了如何打开文件并读取其中的内容:
#include <stdio.h>
int main() {
FILE *file;
int number;
file = fopen("input.txt", "r");
if(file == NULL) {
printf("无法打开文件\n");
return 1;
}
while(fscanf(file, "%d", &number) == 1) {
printf("%d\n", number);
}
fclose(file);
return 0;
}
在上面的代码中,我们首先声明了一个FILE
类型的指针file
和一个整数变量number
。然后,我们使用fopen
函数打开名为"input.txt"的文件,并以只读方式打开它。
接下来,我们使用一个while
循环来重复地使用fscanf
函数从文件中读取整数,并将其存储在number
变量中。当fscanf
函数返回1时,表示成功读取了一个整数。我们然后使用printf
函数将整数打印出来。
最后,我们使用fclose
函数关闭文件,以释放资源。
在运行上述代码时,它将打开名为"input.txt"的文件并逐行读取其中的整数,然后将其打印到终端。
要在C程序中写入文件,我们使用fopen
函数来创建文件,并使用fprintf
函数来将数据写入文件。
下面是一个示例代码,演示了如何创建文件并将数据写入其中:
#include <stdio.h>
int main() {
FILE *file;
int number;
file = fopen("output.txt", "w");
if(file == NULL) {
printf("无法创建文件\n");
return 1;
}
printf("请输入一个整数:");
scanf("%d", &number);
fprintf(file, "输入的整数是:%d\n", number);
fclose(file);
return 0;
}
在上面的代码中,我们同样首先声明了一个FILE
类型的指针file
和一个整数变量number
。然后,我们使用fopen
函数创建名为"output.txt"的文件,并以写入方式打开它。
接下来,我们使用scanf
函数从用户输入中读取一个整数,并将其存储在number
变量中。
然后,我们使用fprintf
函数将包含number
变量值的字符串写入文件中。
最后,我们使用fclose
函数关闭文件,以释放资源。
在运行上述代码时,它将创建一个名为"output.txt"的文件,并将用户输入的整数写入文件。
以下是代码片段按照Markdown语法的标记:
```c
#include <stdio.h>
int main() {
FILE *file;
int number;
file = fopen("input.txt", "r");
if(file == NULL) {
printf("无法打开文件\n");
return 1;
}
while(fscanf(file, "%d", &number) == 1) {
printf("%d\n", number);
}
fclose(file);
return 0;
}
#include <stdio.h>
int main() {
FILE *file;
int number;
file = fopen("output.txt", "w");
if(file == NULL) {
printf("无法创建文件\n");
return 1;
}
printf("请输入一个整数:");
scanf("%d", &number);
fprintf(file, "输入的整数是:%d\n", number);
fclose(file);
return 0;
}
请注意,为了正确显示Markdown标记,代码块的语法示例之间的三重反引号前后可以省略。