Форум программистов, компьютерный форум CyberForum.ru

Определить количество слов в тексте, оканчивающихся на гласную букву - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ ОБРАБОТКА ДВУМЕРНОГО МАССИВА http://www.cyberforum.ru/cpp-beginners/thread239387.html
Сформировать массив из сумм положительных элементов строк.
C++ 3. Ввести строку произвольной длины. Сосчитать количество слов в ней. 3. Ввести строку произвольной длины. Сосчитать количество слов в ней. http://www.cyberforum.ru/cpp-beginners/thread239375.html
Ввести строку произвольной длины.Распечатать все '*' в ней с порядковыми номерами C++
Ввести строку произвольной длины.Распечатать все '*' в ней с порядковыми номерами
C++ Комплексные числа
Здравствуйте! Как мне в С написать вычисление следующего значения R(коэффициент прохождения): l=exp(i*ky1*(-d)); j=i*ky1*(1-d); R=(exp(i*ky1*(y-d)-(d*l)/j)/(exp(i*ky1*(y-d)+(d*l)/j))); где i-это мнимая единица, ky1,d,y-константы
C++ Brainf**k http://www.cyberforum.ru/cpp-beginners/thread239337.html
Народ, суть проблемы такова: наш препод по программированию сам только только окончил вуз, и, к сожалению, это дотавляет неприятности. Вот какое задание к лабораторной он дал: "Как известно, язык Brainf**k есть интерпретируемый язык программирования с 8ю операциями: > < + - , .. Задача состоит в написании интерпретатора для него на C++.". Почитать о нем лучше всего на Вики. Это вроде не сложно....
C++ Рекурсия, ошибка Здраствуйте! У меня есть одна классическая задачка про Лесенку. Лесенка Лесенкой называется набор кубиков, в котором каждый более верхний слой содержит кубиков меньше, чем предыдущий. Требуется написать программу, вычисляющую число лесенок, которое можно построить из N кубиков. Входные данные Во входном файле input.txt записано натуральное число N (1 ≤ N ≤ 225) – количество кубиков в... подробнее

Показать сообщение отдельно
Nameless One
Эксперт С++
5767 / 3416 / 255
Регистрация: 08.02.2010
Сообщений: 7,441
15.02.2011, 10:02     Определить количество слов в тексте, оканчивающихся на гласную букву
Цитата Сообщение от Nameless One Посмотреть сообщение
Напиши функцию, которая будет возвращать указатель на конец очередного слова. Потом проверяй, содержится ли символ, на который указывает возвращаемый указатель, в строке гласных.
вот это можно сделать с помощью таких функций (wordEnd, in):
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include <stdio.h>
#include <stdlib.h>
 
#define VOWELS "AaEeIiOoUuYy"
 
const char* wordEnd(const char* line, const char* pr);
int in(const char* set, char c);
 
int main(void)
{
    const char* str = "a\nfoo bara,baz  \tquuza;\t.xyzzy? bat!qwe\n";
    const char* p = str;
    size_t cnt = 0;
    
    puts(str);
 
    for(p = wordEnd(str, p); p != NULL; p = wordEnd(str, p + 1))
    if(in(VOWELS, *p))
        ++cnt;
 
    printf("Number of words ending with vowel letter: %u.\n", cnt);
    
    exit(0);
}
 
#define DELIMS " \t\n,.!?:;-%"
 
const char* wordEnd(const char* line, const char* pr)
{
    for( ; *pr; ++pr)
    if(in(DELIMS, *(pr + 1)))
        return pr;
 
    return NULL;
}
 
int in(const char* set, char c)
{
    while(*set)
    if(c == *set++)
        return 1;
    return 0;
}
 
Текущее время: 19:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru