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

Строки. Вычислить количество слов в тексте и распечатать эти слова - C++

Восстановить пароль Регистрация
 
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
22.10.2010, 21:52     Строки. Вычислить количество слов в тексте и распечатать эти слова #1
Помогите с задачей!
Задан текст. Вычислить количество слов в нем и распечатать эти слова (по одному в строке).
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2010, 21:52     Строки. Вычислить количество слов в тексте и распечатать эти слова
Посмотрите здесь:

C++ Распечатать те слова, которые являются обращениями других слов в этом предложении
Дана последовательность, содержащая 30 слов. Вывести эти слова в алфавитном порядке C++
Определить наиболее многочисленную группу слов одинаковой длины. Объединить эти слова в строку. C++
Строки. Подсчитать количество заглавных букв в тексте; вывести на экран слова, имеющие наименьшее количество букв... (подправить) C++
C++ Найти количество слов, начинающихся с заданного символа, и заменить эти слова их порядковым номером
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
22.10.2010, 23:09     Строки. Вычислить количество слов в тексте и распечатать эти слова #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
/* Задан текст. Вычислить количество слов в нем и распечатать эти слова (по одному в строке). */
#include <stdio.h>
#include <string.h>
 
#define DELIM " .,\t\n"
 
int main(void){
    char buf[BUFSIZ], * p;
    int cnt;
    
    printf("String: ");
    if ( ! fgets(buf, BUFSIZ, stdin) )
        return 1;
    
    for ( cnt = 0, p = strtok(buf, DELIM); p; ++cnt, p = strtok(NULL, DELIM) )
        printf("%s\n", p);
    
    printf("%d words.\n", cnt);
    
    return 0;
}
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <string>
#include <sstream>
 
 
int main(){
    std::string buf;
    std::cout << "String: ";
    std::getline(std::cin, buf);
    if ( buf.empty() )
        return 1;
    
    std::istringstream ist(buf);
    int cnt(0);
    while ( ist >> buf ){
        ++cnt;
        std::cout << buf << std::endl;
    }
    std::cout << cnt << " words." << std::endl;
    
    return 0;
}
Прекрасная
2 / 2 / 0
Регистрация: 12.02.2010
Сообщений: 96
23.10.2010, 16:03  [ТС]     Строки. Вычислить количество слов в тексте и распечатать эти слова #3
Спасибо! Всё ясно!

Добавлено через 14 часов 20 минут
У меня такой вопрос: а какой оператор добавить, чтобы принимался не только анг. текст, но и русский?
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9371 / 5421 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
23.10.2010, 18:06     Строки. Вычислить количество слов в тексте и распечатать эти слова #4
Цитата Сообщение от Прекрасная Посмотреть сообщение
а какой оператор добавить, чтобы принимался не только анг. текст, но и русский?
А у меня и так русский текст нормально обрабатывается
Строки. Вычислить количество слов в тексте и распечатать эти слова

Эту тему почитайте...
Yandex
Объявления
23.10.2010, 18:06     Строки. Вычислить количество слов в тексте и распечатать эти слова
Ответ Создать тему
Опции темы

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