Вывести слова, которые начинаются с буквы 'с' и содержат более 4 символов - C (СИ)

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

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

Дана стpока символов. Пpизнак конца стpоки - символ '\n' (пеpевод стpоки). Стpока состоит из слов, pазделенных пpобелами. Вывести слова, которые начинаются с буквы 'с' и содержат более 4 символов, и количество всех слов. плюс попросили составить блок-схему, отзовитесь кому не сложно

Решение задачи: «Вывести слова, которые начинаются с буквы 'с' и содержат более 4 символов»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <string.h>
  3.  
  4. int main()
  5. {
  6.     char text[256], *p;
  7.  
  8.     fgets(text, sizeof(text), stdin);
  9.  
  10.     p = strtok(text, " ");
  11.     while (p)
  12.     {
  13.         if ((p[0] == 'c') && (4 < strlen(p)))
  14.         {
  15.             printf("%s\n", p);
  16.         }
  17.         p = strtok(NULL, " ");
  18.     }
  19.  
  20.     return 0;
  21. }

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

В этом коде:

  1. Объявлены две переменные: text типа char и p типа char* (указатель на char).
  2. Переменная text инициализируется массивом символов (строкой) размером 256.
  3. Ввод строки с помощью функции fgets().
  4. p инициализируется первым элементом строки (после разделения строки на слова).
  5. В цикле while происходит проверка каждого слова.
  6. Если слово начинается с буквы 'c' и содержит более 4 символов, то оно выводится на экран с помощью функции printf().
  7. После каждого слова, p инициализируется следующим словом (или NULL, если слов больше нет).
  8. Цикл продолжается, пока есть слова.
  9. Программа завершается, когда NULL достигается в цикле.
  10. Возвращается 0, чтобы указать, что программа успешно завершилась. Пример вывода: cats cat dog cats and dogs Пояснение к коду:
    • В этом коде используется функция strtok(), чтобы разделить входную строку на слова.
    • Оператор == используется для проверки, начинается ли слово с буквы 'c', а не strcmp().
    • Функция printf() используется для вывода слов на экран.
    • Код не обрабатывает исключения или ошибки.
    • Код не удаляет или изменяет исходную строку.
    • В этом коде не используется библиотека stdlib.h, поэтому функции malloc() и free() не используются.

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


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

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

9   голосов , оценка 4.333 из 5

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

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

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