Переписать из одного файла в другой файл только четные числа - C (СИ)
Формулировка задачи:
я сделал так,но у программы не получается переписать только четные числа,в чем ошибка,подскажите пожалуйста
main () { int a; FILE *in; FILE *out; in=fopen("My file1.txt","r"); out=fopen("My file2.txt","w"); while(!feof(in)) { a=getc(in); if(a%2==0) { putc(a,out); } } fclose(in); fclose(out); return 0; }
Решение задачи: «Переписать из одного файла в другой файл только четные числа»
textual
Листинг программы
#include <stdio.h> #include <stdlib.h> int main(void) { int a; FILE *in; FILE *out; in = fopen("file1.txt", "r"); out = fopen("file2.txt", "w"); while ( fscanf(in, "%d", &a) != EOF ) { if (a % 2 == 0) { fprintf(out, "%d ", a); } } fprintf(out, "\n"); fclose(in); fclose(out); return EXIT_SUCCESS; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с файлами
- Объявление переменных: a (для чтения чисел), in (для открытия файла с числами), out (для открытия файла для записи четных чисел)
- Открытие файла с числами для чтения (file1.txt)
- Открытие файла для записи четных чисел (file2.txt)
- Чтение чисел из файла (file1.txt) и запись их в файл (file2.txt) до тех пор, пока не будет достигнут конец файла
- Проверка числа на четность (остаток от деления на 2 должен быть равен 0)
- Запись четного числа в файл (file2.txt)
- Закрытие файлов
- Выход из программы с кодом EXIT_SUCCESS
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д