Переписать из одного файла в другой файл только четные числа - 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;
}

Объяснение кода листинга программы

  1. Подключение необходимых библиотек для работы с файлами
  2. Объявление переменных: a (для чтения чисел), in (для открытия файла с числами), out (для открытия файла для записи четных чисел)
  3. Открытие файла с числами для чтения (file1.txt)
  4. Открытие файла для записи четных чисел (file2.txt)
  5. Чтение чисел из файла (file1.txt) и запись их в файл (file2.txt) до тех пор, пока не будет достигнут конец файла
  6. Проверка числа на четность (остаток от деления на 2 должен быть равен 0)
  7. Запись четного числа в файл (file2.txt)
  8. Закрытие файлов
  9. Выход из программы с кодом EXIT_SUCCESS

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.833 из 5
Похожие ответы