Подсчитать количество слов, заканчивающихся на букву "а" - C (СИ)

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

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

Вся задача: Дан текст, оканчивающийся точкой. Текст состоит из слов, разделённых пробелами. Подсчитать количество слов, заканчивающихся на букву "а". Посмотрел примеры на С++, всё равно не понял. Не знаю, как считывать последний символ у слова. Дошёл только вот до этого:

Решение задачи: «Подсчитать количество слов, заканчивающихся на букву "а"»

textual
Листинг программы
#include <stdio.h>
#include <ctype.h>
 
int main() {
    int ch, back = 0;
    int cnt = 0;
 
    while (back != '.') {
        ch = getchar();
 
        cnt += (back == 'a') && (!isalnum(ch));
 
        back = ch;
    }
 
    printf("cnt = %d\n", cnt);
 
    return 0;
}

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

В этом коде:

  1. В первой строке подключаются необходимые заголовочные файлы для работы с вводом-выводом и проверки символов.
  2. В функции main() объявляются три переменные: ch, back и cnt. Первая две используются для отслеживания текущего символа и предыдущего, третья - для подсчета слов, заканчивающихся на а.
  3. В цикле while считывается каждый символ из стандартного ввода до тех пор, пока не встретится точка.
  4. Переменная cnt увеличивается только в том случае, если предыдущий символ был а и текущий символ не является буквой или цифрой.
  5. После окончания цикла выводится значение переменной cnt.
  6. Программа завершается успешно, возвращая 0.

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


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

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

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