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

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

Войти
Регистрация
Восстановить пароль
 
maxprig
 Аватар для maxprig
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 21
#1

Вывести все слова по одному в столбик - C++

24.10.2012, 20:57. Просмотров 855. Ответов 3
Метки нет (Все метки)

Я написал нечто подобное
Код
#include <iostream>
#include <windows.h>
#include <cstdio>
using namespace std;
int main()
{
    setlocale( LC_ALL,"" );
    int rez, i=0;
    char str[1000];
    cout << "Введи чёнить окда?\n";
    gets(str);
    rez=strlen(str);
    cout << rez;
    cout << str;
    while(i<rez)
    {
        if(str[i]=' ')
        {
            str[i]='\n';
        }
        i++;
    }
    cout << str;
}
Задача следующая, вывести все слова из фразы которую ввёл пользователь по одному.
Я думал вычислить длину строки и проверить каждый символ, типа если пробел, то заменить на \n
Но что то выходит что перенос строки происходит столько раз, сколько символов в строке, которую ввёл пользователь...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.10.2012, 20:57     Вывести все слова по одному в столбик
Посмотрите здесь:

Определить количество слов в строке и вывести на экран слова строки в столбик C++
как в файле вывести все в стречку и не в столбик ?!!?! C++
C++ Вывести все слова в столбик без повторений
C++ Распечатать в столбик все слова строки
C++ Вывести слова, встречающиеся в тексте по одному разу
в C++ Даны два слова.Вывести все общие буквы этих слов по одному разу. C++
Напечатать все слова последовательности, которые встречаются в ней по одному разу. C++
C++ Напечатать все слова, которые встречаются в предложении по одному разу
Напечатать все слова последовательности, которые встречаются по одному разу C++
C++ Напечатать все слова, которые встречаются в строке по одному разу
C++ Вывести в столбик слова, в которых две буквы а
Вывести в столбик слова, в которых заданная буква имеется в количестве двух штук C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Thinker
Эксперт C++
 Аватар для Thinker
4218 / 2192 / 150
Регистрация: 26.08.2011
Сообщений: 3,802
Записей в блоге: 5
24.10.2012, 21:05     Вывести все слова по одному в столбик #2
C
1
2
3
4
5
6
7
8
9
10
#include<stdio.h>
#include<string.h>
int main()
{
   char s[1024], *w;
   fgets(s, 1024, stdin);
   for(w = strtok(s, " \n\t"); w; w = strtok(NULL, " \n\t"))
      puts(w);
   return 0;
}
panicwassano
591 / 559 / 20
Регистрация: 07.11.2010
Сообщений: 2,004
24.10.2012, 21:06     Вывести все слова по одному в столбик #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <cstring>
 
using namespace std;
 
 
int main(){
    setlocale(LC_ALL, "");
    char str[100];
    cout << "Введите строку:";
    cin.getline(str, 100);
    const char *delims = " \t\n,.?!";
    char *token = strtok(str, delims);
    while(token){
        cout << token << '\n';
        token = strtok(NULL, delims);
    }
 
    return 0;
}
maxprig
 Аватар для maxprig
0 / 0 / 0
Регистрация: 22.10.2012
Сообщений: 21
24.10.2012, 21:08  [ТС]     Вывести все слова по одному в столбик #4
Огроменное спасибо, если не сложно, могли бы вы прокоментировать код, интересно как так выходит, сам только начинаю...
Yandex
Объявления
24.10.2012, 21:08     Вывести все слова по одному в столбик
Ответ Создать тему
Опции темы

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