C语言实现:【问题描述】有两个磁盘文件a.txt和b.txt,将b.txt的内容追加到a.txt尾部 【输入形式】 读取两个文件a.txt和b.txt 【输出形式】 输出a.txt
时间: 2023-09-05 19:14:29 浏览: 206
面试题:把a.txt、b.txt文件合并写到c.txt文件
以下是C语言实现的代码:
```c
#include <stdio.h>
int main() {
// 打开a.txt文件
FILE *fileA = fopen("a.txt", "a");
if (fileA == NULL) {
printf("无法打开a.txt文件\n");
return 1;
}
// 打开b.txt文件
FILE *fileB = fopen("b.txt", "r");
if (fileB == NULL) {
printf("无法打开b.txt文件\n");
fclose(fileA); // 关闭a.txt文件
return 1;
}
// 将b.txt文件的内容追加到a.txt文件尾部
int c;
while ((c = fgetc(fileB)) != EOF) {
fputc(c, fileA);
}
// 关闭文件
fclose(fileA);
fclose(fileB);
printf("追加完成\n");
return 0;
}
```
首先,我们使用`fopen`函数分别打开a.txt和b.txt文件。这里需要注意的是,打开a.txt文件时使用了`"a"`模式,表示以追加模式打开文件,如果文件不存在则创建文件。打开b.txt文件时使用了`"r"`模式,表示以只读模式打开文件。
然后,我们使用`fgetc`函数从b.txt文件中逐个字符读取内容,并使用`fputc`函数将其写入a.txt文件。直到读取到文件结尾(EOF)为止。
最后,我们使用`fclose`函数关闭文件,并输出追加完成的提示信息。
需要注意的是,在实际使用中,应该添加错误处理机制,以确保文件操作的正确性。
阅读全文