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

Заменить все вхождения строки s2 в строку s1 на строку s3 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ задача про матрицы http://www.cyberforum.ru/cpp-beginners/thread673575.html
не могу написать программу.только начала изучать язык с++.помогите пожалуйста
C++ Разряды десятичных вещественных чисел Выполнить задания, выделяя цифры числа, хранящегося в переменной стандартного вещественного типа. Число n вводится с клавиатуры: Присвоить целой переменной d k-ую цифру из дробной части положительного вещественного числа x. http://www.cyberforum.ru/cpp-beginners/thread673546.html
Вычислить количество отрицательных элементов массива C++
Задача была такая: В одномерном массиве, состоящем из п вещественных элементов, вычислить: 1) количество отрицательных элементов массива; 2) сумму модулей элементов массива, расположенных после минимального по модулю элемента. Написал программу: #include "stdafx.h" #include <iostream> #include "math.h" using namespace std; int _tmain(int argc, _TCHAR* argv)
C++ Написать прототип, определение функции и пример вызова функции для обработки массива
Написать прототип, определение функции и пример вызова функции для решения указанной далее задачи. исходные данные и результаты работы функции передавать через список параметров, единственный ответ лучше получать как возвращаемое значение. обработку массива вести с использованием указателей. спланировать тестирование функции. для ввода исходных данных, передаваемых в функцию, и печати результатов...
C++ Перегрузка унарных операторов http://www.cyberforum.ru/cpp-beginners/thread673527.html
Здравствуйте! В книге Шилдта С++ Базовый курс много примеров по перегрузке операторов. По одному из них у меня вопрос. Перегружаем префиксную форму оператора инкремента: class three_d { int x,y,z; // трехмерные координаты public: three_d(int i, int j, int k) { x=i; y=j; z=k; } //...... three_d operator++ (); // префиксную } ;
C++ Удалить строку из двумерного массива, в котором присутствует ноль Препод дал подсказу, что убрать строку можно с помощью break, но программа у меня не получается // Уборка нулей.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "cmath" #include "conio.h" #include "time.h" #include "stdlib.h" подробнее

Показать сообщение отдельно
vipusknik
 Аватар для vipusknik
0 / 0 / 0
Регистрация: 22.04.2012
Сообщений: 54
17.10.2012, 21:48  [ТС]     Заменить все вхождения строки s2 в строку s1 на строку s3
я вот здесь сама пытала придумывать,но застряла.
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
int main()
{ char s3[255],s1[255],s2[255];
char ss[255]; // новая строка в которую я переписываю все
int i,k,l,f,p,o;
 
printf("vvedit s1");
gets(s1);
printf("vvedit s2");
gets(s2);
printf("vvedit s3");
gets(s3);
 
for(i=0;i<255;i++) // забила ее пропусками
ss[i]=' ';
k=0;
for(i=0;i<strlen(s1);i++) // иду по 1 строке
{ 
    if (strstr(s1,s2)==0) //если вхождения 2 в 1 нету то просто переписываю с 1 в ss символы
    { ss[k]=s1[i];
    k++;} 
    else 
    { l=strstr(s1,s2); k++; // проверка на то что часть 1 строки равняется 2
        for(j=0;j<strlen(s2);j++)
        { 
            if (s1[l]==s2[j]) o++; l++; // переменная о увиличивается каждый раз когда символы одинаковые, 
        }
        
        if (o==strlen(s2)) // если часть 1 строки точно совпадает с 2 то строку 3 дописываем в ss начиная с позиции вхождения
        { 
            for(p=0;p<strlen(s3);p++)
        { ss[k]=s3[p]; k++;
            }
        } 
        else // а вот здесь как-бы если не совпало 2 и кусок 1 то нада продолжить переписывать 1 стоку но я не знаю как.
        { k++;
            ss[k]=s1[i]; 
        }
 
    }
помогите пожалуйста,если знаете
 
Текущее время: 07:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru