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

Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S - C++

Восстановить пароль Регистрация
 
Maxvik_Grunge
1 / 1 / 0
Регистрация: 10.03.2014
Сообщений: 30
31.03.2014, 20:02     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #1
Обработка символьных массивов с помощью указателей:

Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S

Для модификации строки не использовать дополнительные блоки памяти.После обработки строки освободить выделенный блок памяти.
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.03.2014, 20:02     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S
Посмотрите здесь:

Удвоить каждое вхождение заданной буквы в строке C++
Дан символ и строка, удвоить каждое вхождение символов в строку C++
Дан символ и строка, удвоить каждое вхождение символов в строку!!!! C++
Удвоить каждое вхождение символа С в строку S C++
C++ Дан тестовый файл. Вывести его содержимое в другой файл, заменив каждое вхождение пробела на символ нижнего подчеркивания.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
31.03.2014, 20:07     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #2
Обязательно использование char типа для строки? Или можно использовать string?
Maxvik_Grunge
1 / 1 / 0
Регистрация: 10.03.2014
Сообщений: 30
31.03.2014, 20:28  [ТС]     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #3
Можно использовать.Но желательно через char
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
31.03.2014, 20:46     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
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
#include <iostream>
#include <cstring>
 
void insert(char* buffer, unsigned pos, char c)
{
    for(unsigned i = strlen(buffer) + 1; i > pos; --i)
        buffer[i] = buffer[i - 1]; 
    buffer[pos] = c;
}
 
int main()
{
    std::cout << "input line: ";
 
    const int BUF_SIZE = 256;
    char* buffer = new char[BUF_SIZE];
 
    std::cin.getline(buffer, BUF_SIZE);
 
    std::cout << "input character: ";
    char c;
    std::cin >> c;
 
    for(unsigned i = 0; i < strlen(buffer); ++i)
        if(c == buffer[i])
        {
            insert(buffer, i, c);
            ++i;
        }
 
    std::cout << buffer << std::endl;
 
    delete[] buffer;
    return 0;
}
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
31.03.2014, 20:50     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #5
MarVaL, забыли в прототипе int дописать.
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
31.03.2014, 20:51     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #6
Цитата Сообщение от Anton_Kretov Посмотреть сообщение
MarVaL, забыли в прототипе int дописать.
Я не забыл так задумано, unsigned int = unsigned(так же как long, short(тыщи их))
Anton_Kretov
 Аватар для Anton_Kretov
89 / 51 / 7
Регистрация: 26.06.2013
Сообщений: 179
31.03.2014, 20:53     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #7
MarVaL, а, понял, спасибо.
Maxvik_Grunge
1 / 1 / 0
Регистрация: 10.03.2014
Сообщений: 30
31.03.2014, 21:43  [ТС]     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #8
Цитата Сообщение от MarVaL Посмотреть сообщение
unsigned pos
Цитата Сообщение от MarVaL Посмотреть сообщение
unsigned i
Цитата Сообщение от MarVaL Посмотреть сообщение
unsigned i = 0
Можешь объяснить почему unsigned без типа ?
Вроде unsigned int,char,long и т.д
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.04.2014, 18:09     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S
Еще ссылки по теме:

Удвоить каждое вхождение символа в строке C++
C++ Дан символ C и строки S, S0. После каждого вхождения символа C в строку S вставить строку S0
Даны строка S, символ C и строка S0. Необходимо после каждого вхождения символа C в строку S вставить строку S0 C++

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

Или воспользуйтесь поиском по форуму:
MarVaL
С++ Beginner
 Аватар для MarVaL
116 / 116 / 16
Регистрация: 28.02.2013
Сообщений: 246
01.04.2014, 18:09     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S #9
Цитата Сообщение от Maxvik_Grunge Посмотреть сообщение
Можешь объяснить почему unsigned без типа ?
Вроде unsigned int,char,long и т.д
Цитата Сообщение от MarVaL Посмотреть сообщение
unsigned int = unsigned
вот
Yandex
Объявления
01.04.2014, 18:09     Дан символ C и строка S .Удвоить каждое вхождение символа С в строку S
Ответ Создать тему
Опции темы

Текущее время: 15:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru