Из первого слова удалить все буквы, которые встречаются во втором слове - C (СИ)
Формулировка задачи:
Даны два слова. Из первого слова удалить все буквы, которые встречаются во втором слове.
Помогите пожалуйста - я совсем не разбираюсь в строках.
Решение задачи: «Из первого слова удалить все буквы, которые встречаются во втором слове»
textual
Листинг программы
#include <stdio.h> #include <string.h> int main(void) { char a[] = "abcdefgh", b[] = "egcb", * p; for ( p = strpbrk(a, b); p; p = strpbrk(p, b) ) memmove(p, p + 1, strlen(p)); printf("%s\n", a); return 0; }
Объяснение кода листинга программы
- Подключить две библиотеки: stdio.h и string.h.
- Объявить две переменные типа char: a и b. Значение переменной a равно
abcdefgh
, значение переменной b равноegcb
. - Создать указатель p, который будет указывать на первый символ, следующий за последним символом, который есть в b.
- Начать цикл, который будет выполняться до тех пор, пока p не станет равным NULL.
- Внутри цикла перемещать символы в массиве a, начиная с позиции, на которую указывает p, до конца строки.
- Вывести на экран результат.
- Вернуть 0, чтобы указать, что программа успешно завершилась.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д