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

Найти слово с наибольшим количеством гласных букв - C++

Восстановить пароль Регистрация
 
Kings_ton
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 43
03.12.2013, 23:39     Найти слово с наибольшим количеством гласных букв #1
Гляньте что не так:
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
#include <iostream>
#include <string.h>
#include <conio.h>
using namespace std;
 
void main(){
    char glas[6]="aeiou"; //Создаем массив гласных букв англ. языка.
    int k=0; //Для подсчета гласных в предложении.
    char it[20];
    int max=0;
    char predl[256];
    cout<<"Vvedite"<<endl<<">>>";
    cin.getline(predl,256);
 
    cout<<endl<<"Vi vveli: "<<predl<<endl;
 
    //Разбиваем строку на лексемы. Для простоты проверки и создания нового массива.
    char * pch=strtok(predl," ");
    while(pch!=NULL)
    {
    for (int i=0; i<=strlen(pch); i++)
        {
            if (pch[i]=='a' ||pch[i]=='e' || pch[i]=='i' || pch[i]=='o' ||pch[i]=='u')
            {
                k++;
            }
            if(k>max)
            {
                max=k;
            *it=pch[i];
            }
        }
    }
    cout<<"samoe dlinnoe slovo:"<<it;
    _getch();
}
Задание такое: найти слово с наибольшим количеством гласных букв. Не выводит на экран it, вопрос почему?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.12.2013, 23:39     Найти слово с наибольшим количеством гласных букв
Посмотрите здесь:

Найти в тексте все слова с наибольшим количеством гласных букв русского алфавита C++
C++ Найти разницу между количеством согласных и гласных букв в тексте!
C++ В единственную строку вывести подстроку с наибольшим количеством букв, встречающихся один раз
C++ Вывод слова с наибольшим количеством гласных букв
C++ Дан текстовый файл ( определить слово с наибольшим количеством букв и вставить его на начало и конец строки)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 00:04     Найти слово с наибольшим количеством гласных букв #2
Kings_ton,
Цитата Сообщение от Kings_ton
Гляньте что не так:
Цитата Сообщение от Kings_ton
C++
void main()
функция main должна возвращать int
Kings_ton
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 43
04.12.2013, 00:07  [ТС]     Найти слово с наибольшим количеством гласных букв #3
programina, все равно не выводит, я переписал вот так:
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
#include <iostream>
#include <string.h>
#include <conio.h>
using namespace std;
 
int main()
{
    int k=0; //Для подсчета гласных в предложении.
    int max=0,imax=0;
    char predl[256];
    cout<<"Vvedite"<<endl<<">>>";
    cin.getline(predl,256);
 
    cout<<endl<<"Vi vveli: "<<predl<<endl;
 
    //Разбиваем строку на лексемы. Для простоты проверки и создания нового массива.
    char * pch=strtok(predl," ");
    while(pch!=NULL)
    {
        for (int i=0; i<=strlen(pch); i++)
        {
            if (pch[i]=='a' ||pch[i]=='e' || pch[i]=='i' || pch[i]=='o' ||pch[i]=='u')
            {
                k++;
            }
            if(k>max)
            {
                max=k;
                imax=i;
            }
            
        }
    }cout<<"samoe dlinnoe slovo:"<<pch[imax];
    
    _getch();
}
Все равно не выводит
programina
 Аватар для programina
1912 / 597 / 37
Регистрация: 23.10.2011
Сообщений: 4,468
Записей в блоге: 2
04.12.2013, 00:19     Найти слово с наибольшим количеством гласных букв #4
Kings_ton, не выведет, pch[imax] - это символ, а не строка.
C++
1
out <<"samoe dlinnoe slovo:" <<pch [ imax]
vua72
410 / 410 / 83
Регистрация: 28.11.2010
Сообщений: 1,158
04.12.2013, 01:10     Найти слово с наибольшим количеством гласных букв #5
strtok разрушает исходную строку.
Yandex
Объявления
04.12.2013, 01:10     Найти слово с наибольшим количеством гласных букв
Ответ Создать тему
Опции темы

Текущее время: 10:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru