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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.91
plju6
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 10
#1

Ввести строку , вывести только слова, заканчивающиеся на гласную букву. - C++

04.12.2010, 01:12. Просмотров 2994. Ответов 7
Метки нет (Все метки)

Ввести строку , вывести только слова, заканчивающиеся на гласную букву.

нужно к завтрашнему утру, помогите пожалуйста(

Добавлено через 19 секунд
любую абсолютно строку
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.12.2010, 01:12
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Ввести строку , вывести только слова, заканчивающиеся на гласную букву. (C++):

Удалить из текста все слова заканчивающиеся на гласную букву - C++
Использовать можно только массив символов, переменные string и их функции запрещены( Начал пытаться продумывать решение сам и пришел...

Ввести строку s, найти и вывести слова заканчивающиеся подстрокой s2 - C++
прошу вас сделать без использования библиотек, просто с использованием цикла и условий, поиск юзал ничего того, что одобрит преподаватель...

Вывести в файл слова заканчивающиеся на заданную букву - C++
Дан текстовой файл и некоторая буква, вводимая пользователем. Создать новый текстовый файл заканчивающиея на заданную букву. Мой код...

Вывести из файла все слова, которые начинаются на гласную букву - C++
Вивести из файла все слова котрые начинаются на гласную букву. Слова записаны на английском. ООООЧень нужна помощь!

Найти и вывести все слова начинающиеся и заканчивающиеся на одну и ту же букву (комментирование кода) - C++
Прокомментируйте пожалуйста код: /* Ввести строку длинной до 500 символов.Алфавит русские буквы и пробелы.Найти и вывести все слова...

Вывести все слова заканчивающиеся на букву "а" (переделать на dev c++) - C++
Суть программы: Вывести все слова заканчивающиеся на букву "а". #include <stdio.h> #include <stdlib.h> #include <Windows.h> ...

7
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
04.12.2010, 01:24 #2
plju6,
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
#include <iostream>
#include <sstream>
#include <string>
#include <iterator>
 
int main()
{
    std::string str, del(" ,.?!;\/|"), gol("AaEeIiOoUuYy"), tmp;
    std::cout << "Enter string: \n\t-> ";
    std::getline(std::cin, str);
 
    for(std::string::iterator it = str.begin(); it != str.end(); ++it)
        if(del.find(*it) != std::string::npos)
            *it = ' ';
 
    std::istringstream ist(str);
    std::cout << "Words: \n\t-> ";
    while(ist >> tmp)
    {
        for(int i = 0; i < gol.length(); ++i)
            if(tmp[tmp.size() - 1] == gol[i])
                std::cout << tmp << ' ';
    }
    return 0;
}
1
plju6
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 10
04.12.2010, 01:31  [ТС] #3
а можно через stdio.h пожалуйста?
0
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
04.12.2010, 01:39 #4
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <string.h>
 
#define del " ,.?!;"
#define n 256
#define _n 13
 
int main()
{
    char str[n], gol[_n] = "AaEeIiOoUuYy";
    printf("Enter string: \n\t-> ");
    gets(str);
 
    printf("\nWords: \n\t-> ");
    for(char *p = strtok(str, del); p; p = strtok(NULL, del))
    {
        for(int i = 0; i < _n; ++i)
            if(p[strlen(p) - 1] == gol[i])
                printf("%s ", p);
    }
    return 0;
}
2
plju6
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 10
04.12.2010, 01:47  [ТС] #5
спасибо.
"AaEeIiOoUuYy" - это текст строки?
и что значит строка for(char *p = strtok(str, del); p; p = strtok(NULL, del)) и
if(p[strlen(p) - 1] == gol[i]) ?
0
ForEveR
В астрале
Эксперт С++
7980 / 4739 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
04.12.2010, 01:49 #6
plju6, 1) Это гласные буквы лат. алфавита, что очевидно.
2) Цикл. Про strtok погуглите, вкратце, разбиваем строку на лексемы, в соответствии с данными разделителями (del в данном случае), до тех пор пока p!=NULL.
3) Сравниваем последнюю букву слова с i-ым элементов массива гласных букОв
0
asics
Freelance
Эксперт С++
2848 / 1783 / 144
Регистрация: 09.09.2010
Сообщений: 3,841
04.12.2010, 01:51 #7
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <stdio.h>
#include <string.h>
 
#define del " ,.?!;"
#define n 256
#define _n 13
 
int main()
{
    char str[n], gol[_n] = "AaEeIiOoUuYy";//Это гласные буквы латинского алфавита, а строку вы вводите ручками
    printf("Enter string: \n\t-> ");
    gets(str);
 
    printf("\nWords: \n\t-> ");
    for(char *p = strtok(str, del); p; p = strtok(NULL, del))//Разделяем строку на слова при помощи функции strtok()
    {
        for(int i = 0; i < _n; ++i)
            if(p[strlen(p) - 1] == gol[i])//Если последня буква слова из строки гласная...
                printf("%s ", p);//...выводим это слово на экран
    }
    return 0;
}
1
plju6
0 / 0 / 0
Регистрация: 04.11.2010
Сообщений: 10
04.12.2010, 02:13  [ТС] #8
спасибо огромное! только начал программировать, буду разбираться пробовать..
сайт в закладках ;-)
0
04.12.2010, 02:13
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2010, 02:13
Привет! Вот еще темы с ответами:

Пользователь должен ввести маленькую гласную латинскую букву - C++
пользователь должен ввести маленькую гласную латинскую букву ( o, u, a, i, e). После того, как пользователь ввел требуемую маленькую...

Вывести все слова из каждой строки, начинающиеся и заканчивающиеся на заданную букву и количество таких слов в каждой строке. - C++
Ребят, всем привет!; Помогите, пожалуйста, решить задачу со строками на С++; Даны две строки, содержащие не более 100 символов. ...

Ввести строку и слово, удалить все вхождения слова и вывести строку - C++
помогите с лабой! Добавлено через 22 секунды через &lt;stdio.h&gt;

Удалить из строки все слова, начинающиеся на гласную букву - C++
Здравствуйте, помогите написать программу. за скудностью своих знаний уже часов 5 сижу. вот с чего я начинал: #include&lt;iostream&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru