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

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

Войти
Регистрация
Восстановить пароль
 
Dron111
Сообщений: n/a
#1

Функция в строке должна вычислять количество слов (слова разделяются пробелом) - C++

14.05.2013, 20:20. Просмотров 325. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
int sum  (const char *pS )
{ 
    const char *p (pS);
    int n (0);
    while ( *p )
    {
        if ( isspace (*p)) ++n;
        p++;
    }
    return n+1;
}
Казалось бы всё просто, но как сделать так что бы когда в строке между словами пробел мог быть не 1 а несколько (к примеру "Я______не знаю___как реализовать") здесь по идее 11 пробелов, и в итоге оно покажет 11 слов, а нужно что бы вывело 5, т.е не смотрело сколько между словами " " - пробелов
Помогите сделать
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.05.2013, 20:20     Функция в строке должна вычислять количество слов (слова разделяются пробелом)
Посмотрите здесь:

В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности - C++
Задание 1 В строке, содержащей несколько слов, разделенных пробелом, переставить слова в обратной последовательности. Входные...

Посчитать в строке количество слов с одним пробелом и с произвольным их количеством - C++
Запросить у пользователя строку с символами, и посчитать в ней количество слов с одним пробелом и с произвольным их количеством

Функция должна вычислять рандомное значение от a до b - C++
Создать 2 функции, первая должна вычислять рандомное значение от a до b( a и b мы должны ввести сами),это значение должно выводится в...

Функция подсчитывает количество слов в строке. - C++
Разработать функцию, которая выполняет ту обработку фрагмента текста, которая определена в Вашем индивидуальном задании. При реализации...

Функция должна вычислять число положительных элементов массива и число элементов больших вычисленного числа - C++
Функция должна вычислять число положительных элементов массива и число элементов больших вычисленного числа

Ввести строку и слово. Вывести количество слов в строке, имеющих длину, равную длине введенного слова. - C++
Как ввести строку и слово, чтобы вывести количество слов в строке, имеющих длину, равную длине введенного слова. Помогите плз.

Подсчитать в заданной строке число слов, которые могут быть разделены пробелом, табуляцией, переводом строки - C++
Объясните пожалуйста,в чем ошибка? #include<stdio.h> #include<string.h> int *words(char *s) { int len=strlen(s),i,k=1,l=0; ...

Функция должна заменять каждое появление с1 в строке str на с2 - C++
Не работает код IDE VC++ 2010 Win7 Прата С. - Язык программирования С++. Лекции и упражнения - 2011 Вопросы для самоконтроля ...

Количество слов в заданной строке (для каждого из слов) - C++
дано символьная строка. Слово-последовательность символов между пробелами, не содержащие пробелы усередени себя. Для каждого из слов...

Cтрока: Определить количество средних слов в строке и какое из слов начинается на большую по коду букву - C++
Определить количество средних слов в строе и какое из слов начинается на большую по коду букву. Напишите плз код данной программы...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт CЭксперт С++
13056 / 7319 / 817
Регистрация: 27.09.2012
Сообщений: 18,060
Записей в блоге: 3
Завершенные тесты: 1
14.05.2013, 20:25     Функция в строке должна вычислять количество слов (слова разделяются пробелом) #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
#include <sstream>
 
int main(){ 
    std::string str;
    std::stringstream ss;
    std::getline(std::cin,str);
    ss.str(str);
    std::string temp;
    int count=0;
    while(ss>>temp)
        ++count;
    std::cout<<"Count: "<<count<<std::endl;
}
Dron111
Сообщений: n/a
14.05.2013, 20:51     Функция в строке должна вычислять количество слов (слова разделяются пробелом) #3
А через указатели это как нибудь делается ??

Добавлено через 2 минуты
Цитата Сообщение от Croessmah Посмотреть сообщение
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
#include <sstream>
 
int main(){ 
    std::string str;
    std::stringstream ss;
    std::getline(std::cin,str);
    ss.str(str);
    std::string temp;
    int count=0;
    while(ss>>temp)
        ++count;
    std::cout<<"Count: "<<count<<std::endl;
}
А через указатели это как нибудь делается ??
Ответ Создать тему
Опции темы

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