Подсчет определенных символов из файла - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Разработать программу, принимающую на входе (в качестве параметра) файл, написанный на языке высокого уровня. Во файле считается число символов "{" и "}" и выводится на печать сообщение об ошибке, если они не равны между собой или не сбалансированы. Как это можно реализовать?

Решение задачи: «Подсчет определенных символов из файла»

textual
Листинг программы
    while (true) //Пока не дошли до конца файла
    {
        ch = fgetc(f); // Считываем по одному символу
        if (feof(f)) break;
        if (ch == ch1) cnt++; //Если это тот символ, то увеличиваем счетчик этих символов
        else if (ch == ch2) cnt1++; //Если это тот символ, то увеличиваем счетчик этих символов
    }

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

  1. while (true) — это бесконечный цикл, который будет выполняться до тех пор, пока не будет выполнено условие выхода из цикла.
  2. ch = fgetc(f); — это считывание одного символа из файла с помощью функции fgetc().
  3. if (feof(f)) break; — это проверка на достижение конца файла с помощью функции feof(). Если условие истинно, то выполняется оператор break, который прерывает цикл.
  4. if (ch == ch1) cnt++; — это проверка, является ли текущий символ символом ch1. Если это так, то увеличивается счетчик cnt.
  5. else if (ch == ch2) cnt1++; — это проверка, является ли текущий символ символом ch2. Если это так, то увеличивается счетчик cnt1.
  6. В конце цикла значения счетчиков cnt и cnt1 будут содержать количество символов ch1 и ch2 в файле соответственно.

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

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