Вывести на экран слова, длиннее двадцати букв - C (СИ)

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

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

Помогите! Поиск слов, длиннее 20 букв (фраз с пропущенными пробелами между словами) и вывод их на экран.

Решение задачи: «Вывести на экран слова, длиннее двадцати букв»

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <ctype.h>
  3.  
  4.  
  5. char* s_scan(char** s, int len){
  6.     char* i, *t = NULL, *p = *s;
  7.  
  8.     if(! *p)
  9.         return NULL;
  10.  
  11.     while(*p){
  12.         while(*p && ! isalpha(*p))
  13.             ++p;
  14.  
  15.         i = p + 1;
  16.         while(isalpha(*i))
  17.             ++i;
  18.  
  19.         if((i - p) > len){
  20.             t = p;
  21.             break;
  22.         }
  23.         p = i;
  24.     }
  25.  
  26.     if(t != NULL){
  27.         if(*i)
  28.             *i++ = '\0';
  29.         *s = i;
  30.     }
  31.     return t;
  32. }
  33.  
  34.  
  35. int main(void){
  36.     char* t, *p;
  37.     char  s[] = "Begin (Supercalifragilisticexpialidocious)."\
  38.                 "Pneumonoultramicroscopicsilicovolcanoconiosis, "\
  39.                 "end| floccinaucinihilipilification";
  40.  
  41.     p = &s[0];
  42.     while((t = s_scan(&p, 20)) != NULL)
  43.         puts(t);
  44.     return 0;
  45. }

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


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

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

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

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

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

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