Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
|
||||||
#1 | ||||||
Заменить слово в строке - C++02.04.2014, 21:38. Просмотров 981. Ответов 7
Метки нет Все метки)
(
Пользователь записывает строку в динамический массив. После этого вводит слово, которое он хочет заменить в массиве и слово, на которое нужно заменить. В результате вывести на экран новую строку с измененным словом. Программу реализовать средствами языка С (функции strtok, strcmp, strcat и т.п.).
0
|
|
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
|
02.04.2014, 21:38 |
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Заменить слово в строке (C++):
7
Заменить в строке одно слово на другое, заданное с клавиатуры. - C++ Заменить в строке одно слово на другое, заданное с клавиатуры. - C++ В строке заменить каждое слово child словом children - C++ Если заданное слово встречается в строке, заменить его звездочкой - C++ В строке все запятые заменить точкой, и перед первым словом вставить слово STRING - C++
|
Blueeyer
12 / 12 / 1
Регистрация: 09.10.2013
Сообщений: 222
|
|||||||||||
03.04.2014, 03:34 | #2 | ||||||||||
Используй функции
0
|
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
|
|
03.04.2014, 07:30 [ТС] | #3 |
С этого места можно подробнее? У меня просто немного другая логика решения была. Я брал старое и новое слова как целые символы, потом хотел разбить исходную строку на отдельные слова и сравнивать эти слова с вышеупомянутыми символами.
А в предложенном варианте нужно, как я понимаю, старое и новое слова тоже загнать в массивы и потом уже делать сравнение? И нужна ли вообще в таком случае функция strtok?
0
|
Заблокирован
|
|
03.04.2014, 07:47 | #4 |
0
|
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
|
|
03.04.2014, 08:32 [ТС] | #5 |
Это я глупость сморозил, уже сам понял
![]()
0
|
Заблокирован
|
|
03.04.2014, 08:40 | #6 |
char letter - это один символ (буква, цифра...)
char *word - это указатель на массив символов (слово или целую строку) char* pts=new char[100]; - pts - указатель на массив символов, под который отведено 100 байт char OldWord; - одна буква
1
|
Donnerwetter
40 / 40 / 12
Регистрация: 04.02.2014
Сообщений: 144
|
|
03.04.2014, 08:49 [ТС] | #7 |
IrineK, спасибо за объяснение!
0
|
Заблокирован
|
|
03.04.2014, 08:57 | #8 |
Сделайте OldWord и NewWord статическими контейнерами. Скажем:
char OldWord[20]; if(pts[*p]==OldWord) - хотите сравнить два слова, используйте strcmp. В вашем случае if( strcmp (p, OldWord) == 0) - т.е. если слова равны Добавлено через 1 минуту Использование strtok
1
|
03.04.2014, 08:57 | |
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
|
03.04.2014, 08:57 |
Привет! Вот еще темы с ответами:
8
Надо исправить программу, пожалуйста. Задание: заменить заданное слово в строке другим заданным словом - C++ Нужно заменить последнюю заглавную букву в строке на слово "Kukushechka" - C++ В тексте заменить слово А(любое слово) на слово В(любое слово). А и В разной длинны - C++ В строке первого объекта класса слово MAX длины заменить на слово MAX длины второго объекта класса - C++ Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |