Из первого слова удалить все буквы, которые встречаются во втором слове - 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;
}

Объяснение кода листинга программы

  1. Подключить две библиотеки: stdio.h и string.h.
  2. Объявить две переменные типа char: a и b. Значение переменной a равно abcdefgh, значение переменной b равно egcb.
  3. Создать указатель p, который будет указывать на первый символ, следующий за последним символом, который есть в b.
  4. Начать цикл, который будет выполняться до тех пор, пока p не станет равным NULL.
  5. Внутри цикла перемещать символы в массиве a, начиная с позиции, на которую указывает p, до конца строки.
  6. Вывести на экран результат.
  7. Вернуть 0, чтобы указать, что программа успешно завершилась.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5
Похожие ответы