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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ РАБОТА С ФАЙЛАМИ http://www.cyberforum.ru/cpp-beginners/thread191798.html
Определить, какая буква чаще всего встречается в тексте, находящемся в заданном текстовом файле. помогите пожалуйста:)
C++ Определить n-ое по порядку число Фибоначчи Dali zadanie v intitute.Вводится номер N. Определить N-е по порядку число Фибоначчи. pomogite esli mozete re6eniem:( mojo re6enie,no est 06ibka ona pokazivaet poslednie blizkoe 4islo. #include... http://www.cyberforum.ru/cpp-beginners/thread191793.html
Контейнеры и итераторы C++
Тема: иерархия объектов и группа. Итераторы. Задание: Имена всех монархов на заданном континенте.
C++ Создание структуры)))
Нужна помощь и советы людей которые знают))) Помогите решить задачи! и дайте советы по быстрому изучению структур, указателей, сортировки и т.д.
C++ одномерный массив http://www.cyberforum.ru/cpp-beginners/thread191776.html
упорядочите элементы массива за спадением
C++ Сортировка массивов методом прямых обменов или «пузырьковый» Введите с клавиатуры текст в массив символов. Определите, какие из слов в массиве состоят из букв с возрастающими кодами, какие – с убывающи- ми и какие – с теми и другими. Разместите эти ... подробнее

Показать сообщение отдельно
gorkandmork

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

15.11.2010, 21:25. Просмотров 507. Ответов 0
Метки (Все метки)

Тема уже была, так что сразу прошу извинить...

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

Написать программу, удаляющую символ в строке 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. Если что - извините за тупняк, просто изучаю си всего месяц...
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru