Найти количество слов, содержащих в себе заданную букву - C (СИ)

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

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

Здравствуйте! Прошу помочь мне с такой задачей: С клавы ввести предложение и букву. Найти количество слов с заданной буквой. Заранее спасибо!!!

Решение задачи: «Найти количество слов, содержащих в себе заданную букву»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main(void)
  5. {
  6.   char str[256];
  7.   char a;
  8.   char* pch = NULL;
  9.   int N = 0;
  10.  
  11.   gets(str);
  12.   scanf("%c", &a);
  13.   pch = strtok(str, " ,.!?");
  14.   while (pch != NULL)
  15.   {
  16.     if (strchr(pch, a) != NULL)
  17.     {
  18.       N++;
  19.     }
  20.     pch = strtok(NULL, " ,.!?");
  21.   }
  22.   printf("N = %d\n", N);
  23.  
  24.   return 0;
  25. }

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

В этом коде:

  1. Объявлены следующие переменные:
    • str - массив символов (строка), размер которого 256 символов;
    • a - символ;
    • pch - указатель на первый символ подстроки, выделяемой в строке str при помощи функции strtok;
    • N - счётчик, который инициализируется нулём.
  2. Вводится строка с помощью функции gets(str).
  3. С помощью функции scanf вводится символ a.
  4. В цикле с помощью функции strtok строка str делится на подстроки, ограниченные символами пробела, запятой, точки, восклицательного и вопросительного знаков. При этом, указатель pch получает первый символ каждой подстроки.
  5. В каждой подстроке проверяется наличие символа a с помощью функции strchr. Если символ a присутствует в подстроке, то счётчик N увеличивается на единицу.
  6. После проверки всех подстрок, выводится значение счётчика N.
  7. Программа завершается, возвращая в систему значение 0, что означает успешный конец работы.

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


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

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

14   голосов , оценка 3.857 из 5

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

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

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