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

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

Войти
Регистрация
Восстановить пароль
 
UltraRedMan
8 / 8 / 0
Регистрация: 15.04.2010
Сообщений: 54
#1

Найти количество слов в символьном массиве - C++

22.03.2011, 11:41. Просмотров 856. Ответов 3
Метки нет (Все метки)

дано: х (100), найти количество слов в символьном массиве. Очень прошу помогите...!!!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.03.2011, 11:41     Найти количество слов в символьном массиве
Посмотрите здесь:

В массиве слов найти пару слов, из которых одно является обращением другого C++
Сосчитать количество строк в символьном массиве C++
C++ Проверка строк в двухмерном символьном массиве
C++ Дана строка, состоящая из русских слов. Найти количество слов, которые содержат ровно три буквы «А»
Дан текст, найти количество слов и количество слов, у которых первый и последний символ совпадают C++
C++ Найти в символьном массиве трёхзначные числа
Поиск числа в символьном массиве C++
Найти в массиве символов количество слов, начинающихся с буквы b C++
C++ В символьном массиве заменить буквы на символ %
C++ Найти в заданном одномерном символьном массиве нечётный палиндром наибольшей длины
C++ В заданном символьном массиве найти слова, в которых первая буква слова встречается в нём ещё 1 раз
C++ Найти общее количество слов и количество слов на букву ''с''

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Alex1234
13 / 13 / 0
Регистрация: 11.02.2011
Сообщений: 55
22.03.2011, 14:34     Найти количество слов в символьном массиве #2
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
//--------------------------------------------------------------
int main(int argc, char *argv[])
{
    char *x = "Найти количество слов в символьном массиве. Очень прошу помогите...!!!";
    bool troughWord = false;
    int countWord = 0;
    for(int i = 0; *(x+i) != 0 ; i++)
    {
        if(*(x+i) > 64 && *(x+i) < 91 || *(x+i) > 96 && *(x+i) < 123
           || *(x+i) > 191 && *(x+i) <= 255)
        {
                if(!troughWord)
            {
                countWord++;
                troughWord = true;
            }
        }
        else
        {
            troughWord = false;
        }
    }
    
    cout << "В строке x: " << countWord << " слов";
 
}
Добавлено через 1 минуту
Смотря, что словами считать.
Простой вариант для ASCII:
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
int main(int argc, char *argv[])
{
    char *x = "Найти количество слов в символьном массиве. Очень прошу помогите...!!!";
    bool troughWord = false;
    int countWord = 0;
    for(int i = 0; *(x+i) != 0 ; i++)
    {
        if(*(x+i) > 64 && *(x+i) < 91 || *(x+i) > 96 && *(x+i) < 123
           || *(x+i) > 191 && *(x+i) <= 255)
        {
                if(!troughWord)
            {
                countWord++;
                troughWord = true;
            }
        }
        else
        {
            troughWord = false;
        }
    }
    
    cout << "В строке x: " << countWord << " слов";
    
    return 0;
}
UltraRedMan
8 / 8 / 0
Регистрация: 15.04.2010
Сообщений: 54
31.03.2011, 21:53  [ТС]     Найти количество слов в символьном массиве #3
огромное спасибо..)) помогло)
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
31.03.2011, 23:21     Найти количество слов в символьном массиве #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <sstream>
#include <string>
#include <iostream>
 
int main()
{
    std::string str="Hello and what, do you want?!";
    const std::string& delims=" .,:!?";
    for(std::string::iterator iter=str.begin(); iter != str.end(); ++iter)
      if(delims.find(*iter) != std::string::npos)
         *iter = ' ';
    int count_words=0;
    std::istringstream ist(str);
    std::string tmp;
    while(ist >> tmp) 
        ++count_words;
    std::cout<<count_words<<'\n';
}
Yandex
Объявления
31.03.2011, 23:21     Найти количество слов в символьном массиве
Ответ Создать тему
Опции темы

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