В текстовый файл f3 поместить текст из файла f1 со вставкой текста из файла f2 - C (СИ)
Формулировка задачи:
Всем привет, задание на на работу с текстовыми файлами такое:Даны два текстовых файла f1 и f2. В текстовый файл f3 поместить текст из файла f1 со вставкой текста из файла f2 после n-й строки файла f1.
Помогите написать,пожалуйста, ибо я вообще не понимаю как это сделать. Заранее благодарю.
Решение задачи: «В текстовый файл f3 поместить текст из файла f1 со вставкой текста из файла f2»
textual
Листинг программы
#include <stdio.h>
int main()
{
FILE *f1, *f2, *f3;
f1 = fopen("f1.txt", "r");
f2 = fopen("f2.txt", "r");
f3 = fopen("f3.txt", "w");
int i, n;
puts("Input number line:");
scanf("%d", &n);
char s[80];
for(i = 1; i <= n && NULL != fgets(s, 80, f1); i++)
fputs(s, f3);
while(NULL != fgets(s, 80, f2))
fputs(s, f3);
while(NULL != fgets(s, 80, f1))
fputs(s, f3);
fclose(f1);
fclose(f2);
fclose(f3);
return 0;
}
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами
- Открытие файлов f1.txt, f2.txt и f3.txt для чтения (f1, f2, f3)
- Создание переменной i для цикла
- Создание переменной n для определения количества строк для чтения
- Считывание значения n с помощью функции scanf
- Создание строки s для хранения данных из файла
- Чтение строк из f1.txt и запись их в f3.txt с помощью цикла for
- Чтение строк из f2.txt и запись их в f3.txt с помощью цикла while
- Чтение оставшихся строк из f1.txt и запись их в f3.txt с помощью цикла while
- Закрытие всех открытых файлов (f1, f2, f3)
- Завершение программы с возвратом 0