1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 99
|
|
1 | |
Как вставить символ в строку?18.09.2013, 22:50. Показов 15232. Ответов 3
Метки нет (Все метки)
Здравствуйте, скажите, пожалуйста, какие существуют элементарные способы вставки символа в строку? Есть массив из символов. Пробегаю циклом for каждый символ. Если очередной символ есть точка, то после нее необходимо вставить пробел. Как это сделать?
0
|
18.09.2013, 22:50 | |
Ответы с готовыми решениями:
3
Дан символ C и строки S, S0. Перед каждым вхождением символа C в строку S вставить строку S0 Дан символ C и строки S, S0. После каждого вхождения символа C в строку S вставить строку S0 Изменить код. Даны две строки и символ С. Перед каждым вхождением c в строку S вставить строку S0 Как узнать - входит ли символ в строку? |
18.09.2013, 23:22 | 2 |
Строка у вас это массив символов char. Чтобы вставить символ, нужно часть строки, идущую после точки, сдвинуть на один символ вправо, чтобы освободилось место под пробел и записать в освободившееся место сам пробел. Для этого необходимо, чтобы в массиве было достаточно места, чтобы при сдвиге массив не наехал на другие данные. Не забудьте также о нуле, который должен завершать строку. Сдвиг массива символов экономнее всего осуществлять функцией memmove.
1
|
1 / 1 / 0
Регистрация: 17.09.2013
Сообщений: 99
|
|
18.09.2013, 23:27 [ТС] | 3 |
Спасибо большое. Всё учту.
0
|
Диссидент
27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
20.09.2013, 15:33 | 4 |
Способ, предложенный palva, конечно работает, но крайне не эффективен.
Если память позволяет (или не запрещено по условию задачи), следует создать еще одну строку (в 2 раза больше исходной) и просматривая исходную строку, писать в нее символ за символом. Вечная дилемма программирования "память - скорость".
2
|
20.09.2013, 15:33 | |
20.09.2013, 15:33 | |
Помогаю со студенческими работами здесь
4
Перед каждым вхождением символа C в строку S вставить строку S0 Преобразовать строку, удалив каждый символ * и повторив каждый символ, отличный от * Преобразовать строку, удалив каждый символ * и повторив каждый символ, отличный от * В конце каждой строки вставить заданный символ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи | |||||
Как получить индекс в цикле for в Python
bytestream 21.01.2025
При работе с коллекциями данных в Python часто возникает необходимость не только получить доступ к элементам последовательности, но и знать их позицию в процессе итерации. Индексация в циклах. . .
|
Как определить адрес, из которого локальный репозиторий Git был клонирован
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемой частью рабочего процесса. При работе с Git разработчики часто сталкиваются с необходимостью. . .
|
Какая разница между операторами == и === в сравнениях в JavaScript
bytestream 21.01.2025
В мире веб-разработки JavaScript занимает особое место как динамический язык программирования, предоставляющий разработчикам широкий набор инструментов для создания интерактивных веб-приложений. . . .
|
Из чего и как собрать свой домашний кинотеатр
bt_guru 21.01.2025
Создание домашнего кинотеатра: от идеи до реализации
В современном мире домашний кинотеатр стал неотъемлемой частью комфортного жилого пространства, предоставляя возможность наслаждаться. . .
|
Ошибки стиральных машин
bt_guru 21.01.2025
Современные стиральные машины представляют собой сложные электронные устройства, оснащенные множеством датчиков и систем контроля. Они способны самостоятельно определять вес загруженного белья,. . .
|
Копирование (маппинг) объектов в JavaScript
bytestream 21.01.2025
В современной разработке программного обеспечения копирование объектов представляет собой фундаментальную операцию, которая требует особого внимания и понимания. Маппинг объектов в JavaScript – это. . .
|
Как работать с Apache Kafka в C# .NET
bytestream 21.01.2025
Apache Kafka представляет собой распределенную платформу потоковой передачи данных, которая произвела революцию в области обработки больших объемов информации в реальном времени. Эта система,. . .
|
Как использовать RabbitMQ в C# .NET
bytestream 21.01.2025
RabbitMQ представляет собой мощный брокер сообщений, который эффективно решает эту задачу, обеспечивая надежную передачу данных между множеством приложений. Этот инструмент реализует протокол AMQP. . .
|
Как объединить последние коммиты в Git
bytestream 21.01.2025
В мире разработки программного обеспечения система контроля версий Git стала незаменимым инструментом для управления исходным кодом. Одной из наиболее полезных, но порой сложных для освоения функций. . .
|
Как запушить новую локальную ветку (branch) в удалённый репозиторий Git и отслеживать её
bytestream 21.01.2025
В современной разработке программного обеспечения система контроля версий Git стала неотъемлемым инструментом для эффективного управления кодом и организации командной работы. Одной из ключевых. . .
|
Как создать директорию и все родительские директории, указанные в пути, с помощью Python
bytestream 21.01.2025
Python предоставляет мощные инструменты для работы с файловой системой через встроенные модули os и pathlib, которые значительно упрощают процесс манипуляции директориями. Эти модули содержат. . .
|
Как работать с массивами в JavaScript
bytestream 21.01.2025
Массивы в JavaScript представляют собой один из фундаментальных типов данных, который позволяет хранить упорядоченные коллекции различных элементов в одной переменной. Эта структура данных является. . .
|