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

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

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

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

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

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <ctype.h>
  3.  
  4. int main() {
  5.     int ch, back = 0;
  6.     int cnt = 0;
  7.  
  8.     while (back != '.') {
  9.         ch = getchar();
  10.  
  11.         cnt += (back == 'a') && (!isalnum(ch));
  12.  
  13.         back = ch;
  14.     }
  15.  
  16.     printf("cnt = %d\n", cnt);
  17.  
  18.     return 0;
  19. }

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

В этом коде:

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

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


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

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

15   голосов , оценка 3.8 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы