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

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

Войти
Регистрация
Восстановить пароль
 
Iron86
0 / 0 / 0
Регистрация: 07.06.2013
Сообщений: 17
#1

замена в с троке на подстроку с++ - C++

26.05.2014, 18:16. Просмотров 145. Ответов 0
Метки нет (Все метки)

Написать функцию, заменяющую в исходной строке, одну подстроку (в каждом месте, где она встречается) на другую подстроку.
Чёт не получается, пишу три строки типа чар, исходную, ту которую заменить и ту на которую заменить и пробую найти одну и заменить на вторую, а выходит лажа...

Добавлено через 5 минут
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// Муфлихунова_ДЗ.cpp: определяет точку входа для консольного приложения.
//
 
 
#include <stdio.h>
#include <stdlib.h>
#include "stdafx.h"
#include "windows.h"
#include "iostream"
#include <string.h>
#include "locale.h"
#include <conio.h>
#include <tchar.h>
 
using namespace std;
class ELZ {
        public:
      char strIS[50], strZAM[50],strZAMna[50],strVIXOD[50],z[50];
      int i2;
        int vozvrat(char *strIS, char *strZAM, char *strZAMna);
        
};
 
int ELZ::vozvrat(char *strIS, char *strZAM, char *strZAMna)
{
    int i1=0;
    int i4=0;
    int i6;
    int SimVstrZAM,SimVstrZAMna;
    for (int i2=0;strZAM[i2]!='\0';i2++)
    {
        SimVstrZAM=i2;
    }
    for (int i3=0;strZAMna[i3]!='\0';i3++)
    {
        SimVstrZAMna=i3;
    }
 
    for(int i=0;strIS[i]!='\0';i++)
    {
        if(strIS[i]==strZAM[i1])
        {   
            for (int i5=i;i<i5+SimVstrZAM;i++)
            {   i6=i;
                if(strIS[i]==strZAM[i1]&&strIS[i6+SimVstrZAM]==strZAM[SimVstrZAM])
                    i6--;
                    strVIXOD[i+1]='$';
        {
            strVIXOD[i]=strZAMna[i1];
            i1++;
            if(i1==SimVstrZAM+1)
            {
                i1=0;
            }
        }
        }
        }
        else 
        {
            strVIXOD[i]=strIS[i];
            strVIXOD[i+1]='$';
        }
        
    }
    
    
return  *strVIXOD;
}
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    
    ELZ MmM;
    printf("vvefite isxodny stroky\n ");
    gets(MmM.strIS);
    printf("vvedite 4to zamenit'\n ");
    gets(MmM.strZAM);
    printf("vvedite na 4to zamenit'\n ");
    gets(MmM.strZAMna);
    MmM.vozvrat(MmM.strIS,MmM.strZAM,MmM.strZAMna);
    for (int i=0;MmM.strVIXOD[i]!='$';i++)
    {
    cout<<MmM.strVIXOD[i];
    }
        return  0;
}
Вот чего я понаписал, я писал класс, преподаватель решил, что нужно класс))
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.05.2014, 18:16
Здравствуйте! Я подобрал для вас темы с ответами на вопрос замена в с троке на подстроку с++ (C++):

Как эффективно заменить подстроку в строке на другую подстроку? - C++
И если у подстрок разная длина? есть проверенный готовый способ?

Замена букв в предложении. Не работает замена кириллицы - C++
Суть программы заменить все определенные буквы в предложении на другую. Собственно, вот код. Латиницу заменяет как надо. Но если ввести...

Найти подстроку - C++
Подскажите пожалуйста!! как найти подстроку в строке???? очень нужно,заранее спасибо

Замена всех вхождений подстроки str1 на подстроку str2 - C#
Заменяет все вхождения подстроки str1 на подстроку str2 (при этом str1 может являться частью str2). Ребят напишите пожалуйста код

Найти в троке возможные нули и записать номера этих нулей в массив - Turbo Pascal
Здраствуйте, если не трудно помогите с решением задачи, собственно условие: Дан массив с количеством символово от 1 до 10, задать строку...

В заданной строке A заменить выделенную подстроку на подстроку B - Pascal
Помогите с задачей !!! В заданной строке A заменить выделенную подстроку на подстроку B. Для поиска позиции , с которой надо произвести...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.05.2014, 18:16
Привет! Вот еще темы с ответами:

Заменить в строке подстроку №1 на подстроку №2 - Pascal ABC
Дана строка. Заменить в ней все вхождения подстроки №1 на подстроку №2. Подстроки №1 и №2 вводятся с клавиатуры. Спасибо за внимание!

Каждую подстроку длиной n > 1, состоящую из одинаковых символов, заменить на подстроку из тех же символов в ко - Turbo Pascal
Доброго времени суток. Помогите с задачей. Дана строка S. Каждую подстроку длиной n &gt; 1, состоящую из одинаковых символов, заменить на...

Заменить заданную подстроку в исходной строке на другую заданную подстроку - Turbo Pascal
Всем привет. Вот программа: Заменить заданную подстроку в исходной строке на другую заданную подстроку. Заменяемая и заменяющая подстрока...

Pаменять заданную подстроку в исходной строке на другую заданную подстроку - Turbo Pascal
Всем привет. Я тут создаю программу, которая будет заменять заданную подстроку в исходной строке на другую заданную подстроку. А вот сам...


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

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

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