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

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

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

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

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

textual
Листинг программы
#include <stdio.h>
#include <ctype.h>
 
 
char* s_scan(char** s, int len){
    char* i, *t = NULL, *p = *s;
 
    if(! *p)
        return NULL;
 
    while(*p){
        while(*p && ! isalpha(*p))
            ++p;
 
        i = p + 1;
        while(isalpha(*i))
            ++i;
 
        if((i - p) > len){
            t = p;
            break;
        }
        p = i;
    }
 
    if(t != NULL){
        if(*i)
            *i++ = '\0';
        *s = i;
    }
    return t;
}
 
 
int main(void){
    char* t, *p;
    char  s[] = "Begin (Supercalifragilisticexpialidocious)."\
                "Pneumonoultramicroscopicsilicovolcanoconiosis, "\
                "end| floccinaucinihilipilification";
 
    p = &s[0];
    while((t = s_scan(&p, 20)) != NULL)
        puts(t);
    return 0;
}

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


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

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

15   голосов , оценка 4.4 из 5
Похожие ответы