C program to remove given character from string

Ans: 

In this tutorial you will learn writing program in C to remove or delete given character from string.

This category of program is different from number. 

Before start writing such type of program you should know how to perform some basic operations on String and how to work with character and string.

How our program will behave?

You have to give a string to the program during the execution and also a character which you want to remove from the given string.

Our program will remove given character from string.

For example:

Our string is “quescol is best educational website”.

And we want to remove ‘e’ from the given character.

Now our output will be:

quscol is bst ducational wbsite.

Method to remove character from string C

#include <stdio.h>
#include <string.h>
void removeChar(char *str, char c) {
    int i, j;
    int len = strlen(str);
    for (i = j = 0; i < len; i++) {
        if (str[i] != c) {
            str[j++] = str[i];
        }
    }
    str[j] = '\0';
}

int main() {
    char str[100], c;
    printf("Enter a string: ");
    fgets(str, 100, stdin);
    printf("Enter a character you want to remove: ");
    scanf("%c", &c);
    removeChar(str, c);
    printf("String after removing '%c': %s\n", c, str);
    return 0;
}

Output:

Enter a string: Quescol
Enter a character you want to remove: u
String after removing 'u': Qescol

Explanation of the above program

  • Above program is for how to delete given character from  a given string.
  • In main() method we have three char variables str which is an array, ch and c. And also 3 int variables i, j, len.
  • We have removeChar() method that will take a address of string array as an input and a character which you want to remove from a given string.
  • Now in removeChar(char *str, char charToRemove) method our logic is written.
  • We have just comparing each element of an array with the character which we have to remove from string.
  • If character matched then just replace the element of character array with next element.
  • This will execute until condition fails.
  • And at last print that new array.

This was the all logic behind removing of character from string in C.

I hope it is now clear to you.

Leave a Comment