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

Работа со строками, удаление всех символов строки s1, встречающихся в s2 - C++

Восстановить пароль Регистрация
 
gorkandmork
Сообщений: n/a
15.11.2010, 21:25     Работа со строками, удаление всех символов строки s1, встречающихся в s2 #1
Тема уже была, так что сразу прошу извинить...

Стоит задача:

Написать программу, удаляющую символ в строке s1, который совпадает с любым символом строки s2.
1)с использованием функций библиотеки string.h
2)работая со строками как с массивами.

вариант 2 описан на форуме:


#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <locale.h>

void squeeze(char s1[81], char s2[81]);

void main()
{
setlocale (LC_CTYPE,"Russian");
char s1[81], s2[81];
printf("\n Введите строку№1...\n:>");
gets(s1); // получаем первую строку
printf("\n Теперь введите строку№2...\n:>");
gets(s2); // получаем вторую строку
// Подытоживая собранные данные...
printf("\nВы ввели:%s и захотели удалить из неё символы: %s\n", s1, s2);
squeeze(s1, s2);
// Вывод результата
printf("Получилась строка: %s\n", s1);
getch();
}

void squeeze(char s1[], char s2[])
{
int k=0;
for(int i=0,j; s1[i]; i++)
{
for(j=0; s2[j]; j++)
if(s2[j]==s1[i])
break;
if(!s2[j])
s1[k++]=s1[i];
}
s1[k]=0;
}



как же тогда сделать вариант 1)? разве есть в си функции данной библиотеки, которые могут позволить это сделать? или я чего-то не пониманию?

P.S. Если что - извините за тупняк, просто изучаю си всего месяц...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.11.2010, 21:25     Работа со строками, удаление всех символов строки s1, встречающихся в s2
Посмотрите здесь:

Работа со строками символов C++
C++ Работа со строками как с массивом символов
Удаление из массива всех элементов, встречающихся ровно два раза C++
C++ Работа со строками (удаление из строки указанного символа)
Работа со строками. Удаление отдельных символов C++
C++ Работа со строками символов
C++ Работа со строками символов
Работа со строками. Замена символов C++

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

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

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