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

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

Войти
Регистрация
Восстановить пароль
 
Raikerian
9 / 9 / 1
Регистрация: 10.05.2011
Сообщений: 101
#1

Работа со строками (равномерная вставка пробелов в начальную строку) - C++

28.05.2012, 19:07. Просмотров 462. Ответов 0
Метки нет (Все метки)

Разработать алгоритм и программу для равномерной вставки пробелов в начальный строку (длиной менее 50 символов) так, чтобы ее длина стала равной 50 символам. Перенос слов на новую строку осуществлять на месте пропуска.

Собственно долго думал и получил нечто следующее:
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
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int main()
{
    setlocale(LC_ALL, "");
    const int Dest = 50;
    char str[50];
    cout << "Введите текст: ";
    gets(str);
    char new_str[50];
    int par=Dest/strlen(str);
    /*Temp = *(str+strlen(str)-1);
    *(str+strlen(str)-1) = ' ';
    *(str+strlen(str)) = Temp;*/
    for (int j=0, i=0; j<Dest; j+=par, ++i)
    {
        *(new_str+j) = *(str+i);
        for (int k=1; k<par; ++k)
            *(new_str+j+k) = ' ';
    }
    cout << "\nНовая строка: " << new_str << endl;
    cin.sync();
    cin.get();
    return 0;
}
Проблемы: выскакивает ошибка в конце (stack overflow new_str) и пробелы добавляются мне кажется не так (например при вводе par получаю p____a____r____) Тоесть в конце слова еще пробелы. Просьба помочь
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
28.05.2012, 19:07     Работа со строками (равномерная вставка пробелов в начальную строку)
Посмотрите здесь:
Равномерная вставка пробелов в строку C++
C++ Работа со строками. Определить количество пробелов в строке и вывести на экран
Работа со строками (вывести на экран введенную строку) C++
C++ Если предложение начинается с пробелов, считать строку после пробелов. Правильно ли работает функция?
работа со строками. Перевернуть, заданную пользователем строку, в отдельной функции C++
C++ Работа со строками ( разбить строку на N заданных частей с помощью strncpy)
Работа со строками (записать в другую строку первое слово и поставить пробел) C++
С++. Вставка символов/пробелов C++
C++ Задать количество пробелов между строками
C++ Вставка пробелов перед заданными символами
C++ Ввести строку. Вывести строку так, чтобы за каждым словом следовало количество пробелов, равное длине слова.
Добавление пробелов в строку C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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