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

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

Войти
Регистрация
Восстановить пароль
 
lokteva
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 16
#1

Строки. Удалить все пробелы - C++

15.04.2013, 17:26. Просмотров 601. Ответов 4
Метки нет (Все метки)

Задание: Дана строка, в которой слова разделены одним пробелом и более. Удалить из нее все пробелы.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <string>
using namespace std;
 
void main()
{
    setlocale(LC_ALL,"rus_rus.1251");
    string str = "q  w e r t y";
    cout<<"Строка с пробелами: "<<endl;
    while(1)
    {
        int index=str.find(' ');
            str.erase(index,1);
        if(index==string::npos)
            break;
    }
    cout<<str;
}
Почему программа не работает?????
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2013, 17:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Строки. Удалить все пробелы (C++):

Строки: удалить все пробелы - C++
Всем доброго времени суток. Я учусь на инженера-электрика и вообщем-то засел на задаче по программированию на С++. Буду весьма благодарен...

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

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

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

Удалить пробелы из строки - C++
Всем доброго времени суток, начал изучать с++ и в книге наткнулся на такую задачу, нужно удалить пробелы написал программу, но вылетает...

Удалить пробелы из строки - C++
4) Написать программу ,которая удаляет из введенной с клавиатуры строки все пробелы.

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Croessmah
Модератор
Эксперт CЭксперт С++
13147 / 7410 / 830
Регистрация: 27.09.2012
Сообщений: 18,243
Записей в блоге: 3
Завершенные тесты: 1
15.04.2013, 17:58 #2
Цитата Сообщение от lokteva Посмотреть сообщение
Почему программа не работает?????
В кратце:
C++
1
2
3
int index=str.find(' ');//Когда вернется npos
str.erase(index,1);//выполнится эта строчка.
if(index==string::npos)//Потому что эта проверка стоит дальше
Исправленный вариант:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
#include <string>
using namespace std;
 
void main()
{
    setlocale(LC_ALL,"rus_rus.1251");
    string str = "q  w e r t y";
    cout<<"Строка с пробелами: "<<endl;
     int index;
    while((index=str.find(' '))!=string::npos){
            str.erase(index,1);
    }
    cout<<str;
}
lokteva
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 16
15.04.2013, 18:03  [ТС] #3
Спасибо а почему программа на экран не выводит строку с пробелами?
Croessmah
Модератор
Эксперт CЭксперт С++
13147 / 7410 / 830
Регистрация: 27.09.2012
Сообщений: 18,243
Записей в блоге: 3
Завершенные тесты: 1
15.04.2013, 18:04 #4
Цитата Сообщение от lokteva Посмотреть сообщение
экран не выводит строку с пробелами?
ну так в коде нет её вывода. Добавьте
C++
1
cout<<str<<endl;
перед циклом
lokteva
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 16
15.04.2013, 18:23  [ТС] #5
спасибо большое всё получилось
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.04.2013, 18:23
Привет! Вот еще темы с ответами:

Переписать все строки файла F.txt в файл G.txt, удаляя все пробелы в конце каждой строки - C++
помогите как можно быстрей Дан текстовый файл F.txt. Переписать все строки файла F.txt в файл G.txt, удаляя все пробелы в конце каждой...

Удалить все пробелы в строке - C++
можно ли как то с помощью метода string.replace удалить все пробелы в строке? вот так не работает :( string str(&quot;this is test string&quot;); ...

Удалить все лишние пробелы - C++
В чем ошибка? #include &lt;iostream&gt; #include &lt;string&gt; using namespace std; int main() { string s;

Удалить начальные пробелы из строки... - C++
Вот написал какой то бред, но почему то он не работает.... Недавно начал изучать с++ поэтому не кричите) using namespace std; ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
15.04.2013, 18:23
Ответ Создать тему
Опции темы

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