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

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

Войти
Регистрация
Восстановить пароль
 
OLLEGATOR
Linux-оид
116 / 65 / 3
Регистрация: 15.02.2011
Сообщений: 353
#1

После каждого вхождения символа C в строку S вставить строку S0 - C++

22.03.2011, 04:30. Просмотров 857. Ответов 0
Метки нет (Все метки)

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



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
48
49
50
51
52
53
54
55
56
57
58
59
#include <iostream>
#include <string.h>
 
using namespace std;
const int N=30;
 
void Vstavka_Stroki(char *S, char *S0, char *c);
 
 
int main()
{
 
    char *S=new char [N*2];
    char *S0=new char [N];
    char *c=new char [N];
 
    cout<<"Введите Строчку для обработки: ";
    cin.getline(S,N);
 
    cout<<"Какую строчку будем вставлять: ";
    cin.getline(S0,N);
 
    cout<<"После какого символа вставляем строчку: ";
    cin.getline(c,N);
 
    Vstavka_Stroki(S,S0,c);
 
    cout<<"\033[01m"<<"\n_____________________________________________________________________\n"<<"\033[00m";
    cout<<"Теперь строчка выглядит так: \n"<<S<<"\n";
 
}
 
void Vstavka_Stroki(char *S, char *S0, char *c){
 
    char *ss=S;
 
    char *t;
 
    char *r=new char [N*2];
 
    strcat(r,"");
 
    while(t=strstr(S,c)){
 
        strncat(r,S,strlen(S)-strlen(t)+strlen(c));
 
        strcat(r,S0);
 
        strcat(r,S+strlen(S)-strlen(t)+strlen(c));
 
        S=t+strlen(c);
 
    }
 
    strcpy(ss,r);
 
    delete [] r;
 
}
Если одно вхождение то работает всё чётко..если два глюк с повторением...укажите на ошибку pls...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.03.2011, 04:30     После каждого вхождения символа C в строку S вставить строку S0
Посмотрите здесь:

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

Разработать рекурсивную функцию, которая после каждого вхождения символа a в строку s добавляет символ b - C++
На уроке преподаватель не объясняет как решать. Задачи берутся из &quot;Основы программирования на языке С++&quot; часть 2 Огнева М.В., Кудрина Е.В....

Дана строка символов и некоторый символ sym. Сформируйте новую строку, вставив после каждого вхождения символа sym запятую. - C++
Помогите решить задачку: Дана строка символов и некоторый символ sym. Сформируйте новую строку, вставив после каждого вхождения...

Функция разбивает строку на две части: до первого вхождения заданного символа и после него - C++
Программу написал но не очень понятно как без цстринг (а это в условии, что нельзя пользоваться cstring). В самоучителе про цстринг...

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

В исходную строку добавьте после каждого символа его номер по порядку в алфавите - C++
В исходную строку добавьте после каждого символа его номер по порядку в алфавите. Я сравниваю строку со строкой алфавита и если символы...

Определить позицию первого вхождения в заданную строку какого-либо символа - C++
Помогите составить процедуру, позволяющую определить позицию первого вхождения в заданную строку какого-либо символа из второй заданной...

Найти индекс последнего вхождения символа, введённого пользователем, в заданную строку - C++
Уважаемые форумчане. Помогите, пожалуйста, написать программу по следующему условию: пользователь вводит отдельно строку и символ,...

Функция, определяющая позицию самого первого вхождения заданного символа в исходную строку - C++
Прошу помочь решить задачки!:(очень нужно (Билет №25) Составить функцию, позволяющую определить позицию самого первого вхождения...

Функция, возвращающая номер самого правого вхождения заданного символа во введенную строку - C++
Нужна помощь в составлении программы: возвращающую номер самого правого вхождения заданного символа во введенную строку. Если символ не...


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

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

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