Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Последние темы форума

Показать новые сообщения »

Почтовая рассылка

Подписчиков: 11832
Последний выпуск: 19.06.2015

Помогите написать на Си

98K
14 октября 2016 года
elena_tachkova@mail.ru
1 / / 14.10.2016
Ввести строку , вывести только слова, заканчивающиеся на гласную букву
19K
15 октября 2016 года
xAtom
62 / / 17.01.2011
Код:
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define is_delim(c)  (isspace((c)) || ispunct((c)))

char* get_words(char** s, const char* of){
    char* t, *p = *s;
    while((p = strpbrk(p, of)) != NULL){
        if(!*(p + 1) || is_delim(*(p + 1))){
            t = p + 1;
            while((p >= *s) && !is_delim(*p))
                --p;

            if(*t)
                *t++ = '\0';
            *s = t;
            return p + 1;
        }
        ++p;
    }
    return NULL;
}

int main(void){
    char* p, *w;
    char s[128];
    const char vs[] = "aeoiuyAEOIUY";

    printf("Enter str: ");
    scanf("%127[^\n]", s);

#if defined(__BORLANDC__) || defined(_MSC_VER)
    fflush(stdin);
#endif

    p = &s[0];
    while((w = get_words(&p, vs)) != NULL)
        puts(w);
    getchar();
    return 0;
}

Знаете кого-то, кто может ответить? Поделитесь с ним ссылкой.

Ваш ответ

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог