Вывести слова, которые начинаются с буквы 'с' и содержат более 4 символов - C (СИ)
Формулировка задачи:
Дана стpока символов. Пpизнак конца стpоки - символ '\n' (пеpевод стpоки). Стpока состоит из слов, pазделенных пpобелами.
Вывести слова, которые начинаются с буквы 'с' и содержат более 4 символов, и количество всех слов.
плюс попросили составить блок-схему, отзовитесь кому не сложно
Решение задачи: «Вывести слова, которые начинаются с буквы 'с' и содержат более 4 символов»
textual
Листинг программы
#include <stdio.h> #include <string.h> int main() { char text[256], *p; fgets(text, sizeof(text), stdin); p = strtok(text, " "); while (p) { if ((p[0] == 'c') && (4 < strlen(p))) { printf("%s\n", p); } p = strtok(NULL, " "); } return 0; }
Объяснение кода листинга программы
В этом коде:
- Объявлены две переменные:
text
типаchar
иp
типаchar*
(указатель наchar
). - Переменная
text
инициализируется массивом символов (строкой) размером 256. - Ввод строки с помощью функции
fgets()
. p
инициализируется первым элементом строки (после разделения строки на слова).- В цикле
while
происходит проверка каждого слова. - Если слово начинается с буквы 'c' и содержит более 4 символов, то оно выводится на экран с помощью функции
printf()
. - После каждого слова,
p
инициализируется следующим словом (илиNULL
, если слов больше нет). - Цикл продолжается, пока есть слова.
- Программа завершается, когда
NULL
достигается в цикле. - Возвращается 0, чтобы указать, что программа успешно завершилась.
Пример вывода:
cats
cat
dog
cats and dogs
Пояснение к коду:- В этом коде используется функция
strtok()
, чтобы разделить входную строку на слова. - Оператор
==
используется для проверки, начинается ли слово с буквы 'c', а неstrcmp()
. - Функция
printf()
используется для вывода слов на экран. - Код не обрабатывает исключения или ошибки.
- Код не удаляет или изменяет исходную строку.
- В этом коде не используется библиотека
stdlib.h
, поэтому функцииmalloc()
иfree()
не используются.
- В этом коде используется функция
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д