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

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

Войти
Регистрация
Восстановить пароль
 
hepr
61 / 33 / 5
Регистрация: 21.10.2010
Сообщений: 539
#1

Работа с массивом char - C++

15.12.2010, 20:25. Просмотров 839. Ответов 1
Метки нет (Все метки)

Вот задание
Вам дана непустая строка, состоящая из строчных латинских букв, цифр и пробелов. Длина строки не превышает 250 символов. Словом для данной строки называется наибольшая по включению подстрока, не содержащая пробелов. Ваша задача - удалить из строки все лишние пробелы так, чтобы два последовательных слова разделял ровно один пробельный символ. Лидирующих и концевых пробелов в строке быть не должно. Гарантируется, что в строке имеется хотя бы один непробельный символ.
Подправьте пожалуйста код, а то у меня почему-то не работает, не знаю почему
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
#include "stdafx.h"
#include "iostream"
 
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{ 
    char str[250];
    std::cin >> str;
    std::cout << std::endl;
    int pos;
    for(int a=1;a<=strlen(str);a++)
    {
        if (str[a]!=' ')
        {
            pos=a;
            a=strlen(str);
        };
    };
    for(int a=1;a<strlen(str);a++)
    {
        str[a]=str[a+pos];
    };
    int obrpos;
    for(int a=strlen(str);a>=1;a--)
    {
        if (str[a]!=' ')
        {
            obrpos=a;
            a=1;
        };
    };
    for(int a=1;a<=strlen(str);a++)
    {
        if ((str[a]==' ') && (str[a+1]==' '))
        {
            for(int b=a;b<=strlen(str)-1;b++)
                str[b]=str[b+1];
            obrpos--;
        };
    };
    for(int a=1;a<=obrpos;a++)
        std::cout << str[a];
    char w;
    std::cin >> w;
    return 0;
}
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.12.2010, 20:25
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Работа с массивом char (C++):

Работа с массивом char - C++
Товарищи подскажите пожалуйста, не могу никак понять в чём проблема. Есть массив скажем: int X; X = 1; X = 2; X = 3; X = 4; ...

Работа с массивом char - C++
Добрый день. Объясните, если не сложно, на пальцах в чем ошибка? char*my1={&quot;first my1&quot;,&quot;second my1&quot;}; my1='E'; Синтаксически все...

Работа с массивом символов Char - C++
Народ помогите! 2. Дано целое число N и текстовый файл. Создать строковый файл, содержащий все слова длины N из исходного файла (знаки...

проблема с массивом типа CHAR - C++
нужно выполнить функцию fopen() . которая кушает на вход указатель на массив char в качестве пути к файлу ну и режим работы с файлом. ...

Задание с массивом типа char - C++
Нужно удалить все столбцы в которых есть хотя бы одна буква 'а'.Ошибка в delA,но не знаю как исправить #include &lt;cstdlib&gt; #include...

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
eczo
37 / 37 / 1
Регистрация: 15.12.2010
Сообщений: 110
15.12.2010, 23:01 #2
еще бы он работал. если посмотреть по коду то он делает не известно что, но явно не то что требует условие
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
15.12.2010, 23:01
Привет! Вот еще темы с ответами:

Работа со строками - Invalid conversion from 'char' to 'const char*' - C++
#include &lt;iostream&gt; #include &lt;ctype.h&gt; #include &lt;stdio.h&gt; #include &lt;string.h&gt; using namespace std; void poisk(int n, char...

Проверка массива char на равенство с таким же массивом - C++
#include &lt;iostream&gt; using namespace std; int main() { char chArr={&quot;4 8&quot;}; char chCode={&quot;4 8&quot;}; if (chCode==chArr)...

Помощь с массивом char breed[4] = {'Dog ','Cat ', 'Rat ', 'Mouse '} - C++
У меня вот тут проблемка, и я просто хочу понять как оно работает... Я так более менее понимаю работу ссылки (*) и то, что по идее само имя...

Объяснить разницу между массивом типа char и строкой в стиле Си (нюансы использования нуль-терминатора) - C++
Господа, появился такой вопрос: какое место занимает \0 в массиве charов? В данном коде пытался выйти из цикла по достижении...


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

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

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