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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 31, средняя оценка - 4.77
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
#1

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

10.12.2011, 21:52. Просмотров 4597. Ответов 23
Метки нет (Все метки)

4) Написать программу ,которая удаляет из введенной с клавиатуры строки все пробелы.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.12.2011, 21:52     Удалить пробелы из строки
Посмотрите здесь:

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

Строки. Удалить все пробелы - C++
Задание: Дана строка, в которой слова разделены одним пробелом и более. Удалить из нее все пробелы. #include <iostream> #include...

как удалить из строки пробелы - C++
либо массив char либо string как вам угодно помогите пожайлуста

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

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

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

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

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ropsat
29 / 29 / 1
Регистрация: 04.03.2011
Сообщений: 67
10.12.2011, 22:34     Удалить пробелы из строки #2
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <conio.h>
#include <string.h>
int main()
{
    char s1[100],s2[]=" ",*p=s1;
    gets(s1);
    while ((p=strstr(s1,s2))!=NULL)
    {
        *p=0;
        strcat(s1,p+strlen(s2));
    }
    getch();
    return 0;
}
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:11  [ТС]     Удалить пробелы из строки #3
Ropsat, спасибо большое ! а это точно правильно"
Ropsat
29 / 29 / 1
Регистрация: 04.03.2011
Сообщений: 67
10.12.2011, 23:39     Удалить пробелы из строки #4
Правильно, забыл только добавить puts (s1) для вывода строки
Mиxaил
531 / 436 / 37
Регистрация: 10.12.2009
Сообщений: 1,857
10.12.2011, 23:42     Удалить пробелы из строки #5
C++
1
2
3
4
5
6
7
8
9
10
11
#include <iostream>
#include <string>
#include <algorithm>
 
int main()
{
    std::string s( "qwerty  qwerty qwerty " );
    s.erase( std::remove( s.begin(), s.end(), ' ' ), s.end() );
    std::cout << s << std::endl;
    return 0;
}
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
10.12.2011, 23:45  [ТС]     Удалить пробелы из строки #6
Ropsat, а с ним как будет!

Добавлено через 2 минуты
чуть не забыл! блок схема нужна!и описание
alkagolik
Заблокирован
11.12.2011, 03:03     Удалить пробелы из строки #7
Цитата Сообщение от ююю Посмотреть сообщение
чуть не забыл! блок схема нужна!и описание
... и пятки еще почесать
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
#include <stdio.h>
#include <string.h>
 
char *f ( char *str )
{
    char *p = malloc(strlen(str) + 1), *t;
    p = strcpy ( p, str );
    t = p;
 
    while ( 1 )
    {
        if (str = strchr(str, ' ') )
            p = strcpy ( p = strchr( p, ' ' ), ++str );
        else
            break;
    }
    return t;
}
 
int main ( void )
{
    char *str = "this is a string";
    printf ( "%s\n", str = f(str) );
    free ( str );
    return 0;
}
xAtom
914 / 739 / 60
Регистрация: 09.12.2010
Сообщений: 1,346
Записей в блоге: 1
11.12.2011, 09:48     Удалить пробелы из строки #8
C
1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
#include <string.h>
 
int main(void) {
  char *ptr, str[128] = {'\0'};
  printf("Enter str: ");
  gets(str);
  for(ptr = str; (ptr = strpbrk(ptr, " ")); )
       strcpy(ptr, ptr + 1);
  puts(str);
  return 0;
}
alkagolik
Заблокирован
11.12.2011, 10:05     Удалить пробелы из строки #9
видимо я неверно трактую это
Цитата Сообщение от man strcpy
ОПИСАНИЕ
Функция strcpy() копирует строку, указанную как src (включая завершающий символ `\0'), в массив, указанный как
dest. Строки не могут перекрываться, и в целевой строке dest должно быть достаточно места для получения копии.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
11.12.2011, 11:30     Удалить пробелы из строки #10
Цитата Сообщение от xAtom Посмотреть сообщение
strcpy(ptr, ptr + 1);
Не хорошо так делать
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
16.12.2011, 17:16  [ТС]     Удалить пробелы из строки #11
описание ! напишите кто сможет срочно надо
Петррр
5942 / 3379 / 335
Регистрация: 28.10.2010
Сообщений: 5,926
16.12.2011, 18:36     Удалить пробелы из строки #12
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <string>
#include <algorithm>
 
using namespace std;
 
int main(int argc, char **argv)
{
    string s;
    cout << "Please enter string: ";
    getline(cin, s, '\n');
    char symbol;
    cout << "Please enter symbol to remove from string: ";
    symbol = cin.get();
    string::iterator it = remove(s.begin(), s.end(), symbol);
    s.erase(it, s.end());
    cout << "After remove: " << s << endl;
    return EXIT_SUCCESS;
}
-=ЮрА=-
Заблокирован
Автор FAQ
16.12.2011, 19:02     Удалить пробелы из строки #13
Цитата Сообщение от ююю Посмотреть сообщение
4) Написать программу ,которая удаляет из введенной с клавиатуры строки все пробелы.
- можно на Си можно на С++
Вариант Си
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>
#include <conio.h>
#include <string.h>
 
int main()
{
    char str[1024];
    printf("Enter text less than 1024 chars\n");
    scanf("%[^\n]",str);//Г’Г*ГЄ ìîæГ*Г® ГўГўГҐГ±ГІГЁ ñòðîêó Г± ïðîáåëГ*ìè
    for(int i = 0; str[i + 1] != '\0'; i++)
    {
        if(str[i] == ' ')
        if(strcpy(&str[i],&str[i + 1]))
            i--;
    }
    printf("String after removing text : %s\n",str);
    printf("Press any key to continu\n");
    getch();
    return 0;
}
Миниатюры
Удалить пробелы из строки  
-=ЮрА=-
Заблокирован
Автор FAQ
16.12.2011, 19:13     Удалить пробелы из строки #14
Это вариант на плюсах
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <string>
using namespace std;
 
int main()
{
    string str;
    cout<<"Enter text\n";
    getline(cin,str);//Г’Г*ГЄ ìîæГ*Г® ГўГўГҐГ±ГІГЁ ñòðîêó Г± ïðîáåëГ*ìè
    for(int i = 0; i < str.length(); i++)
    {
        if(str[i] == ' ')
        {
            str.erase(i,1);
            i--;
        }
    }
    cout<<"String after removing text : "<<str.c_str()<<endl;
    system("pause");
    return 0;
}
Миниатюры
Удалить пробелы из строки  
-=ЮрА=-
Заблокирован
Автор FAQ
16.12.2011, 19:15     Удалить пробелы из строки #15
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
getline(cin,str);
- для проектов скомпилированных на ранних версиях студии при вводе Enter нужно нажать 2 раза
ююю
0 / 0 / 0
Регистрация: 10.12.2011
Сообщений: 40
18.12.2011, 13:29  [ТС]     Удалить пробелы из строки #16
-=ЮрА=-, напиши описание для си срочно надо)
-=ЮрА=-
Заблокирован
Автор FAQ
18.12.2011, 15:38     Удалить пробелы из строки #17
Цитата Сообщение от ююю Посмотреть сообщение
=ЮрА=-, напиши описание для си срочно надо)
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
if(strcpy(&str[i],&str[i + 1]))
- см сюда
Удалить каждое четное слово из строки
остальное как бы тривиально

Добавлено через 1 минуту
Цитата Сообщение от -=ЮрА=- Посмотреть сообщение
"%[^\n]"
- это продвинутый спецификатор ввода, благодаря ему вводятся символы пока не нажали Enter, т.е. не встретили перевод на другую строку \n
estel
1 / 0 / 0
Регистрация: 02.05.2012
Сообщений: 31
12.05.2012, 19:15     Удалить пробелы из строки #18
Цитата Сообщение от xAtom Посмотреть сообщение
C
1
       strcpy(ptr, ptr + 1);
А можно без этой функции перезаписать массив?
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
12.05.2012, 19:35     Удалить пробелы из строки #19
Цитата Сообщение от estel Посмотреть сообщение
А можно без этой функции перезаписать массив?
По каким это соображениям?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2012, 23:00     Удалить пробелы из строки
Еще ссылки по теме:

Удалить конечные пробелы из строки... - C++
#include &lt;string&gt; #include &lt;iostream&gt; int main() { std::string s(&quot; ...

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

Удалить из строки начальные пробелы - C++
задача №1 Написать программу, которая удаляет из введенной с клавиатуры строки начальные пробелы задача № 2 , ПравилаЗадача...

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

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


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

Или воспользуйтесь поиском по форуму:
alkagolik
Заблокирован
12.05.2012, 23:00     Удалить пробелы из строки #20
go, эта функция непредсказуемо себя ведет в случае когда оба аргумента это одни и те же данные.
estel, есть альтернативы memcpy, memmove.
Yandex
Объявления
12.05.2012, 23:00     Удалить пробелы из строки
Ответ Создать тему
Опции темы

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