C program to remove repeated character from string

To remove repeated character from string, we will traverse the each character of string. And while traversing will also compare to the next character. If same character is available in string and we will just remove the string and shift the element towards left.

You can also see the below program. Some part of logic is mostly same

C program to remove blank space from string in c

How our repeated character removal program work?

  • It will take a string as an input.
  • Now to remove repeated character our logic will be, we will select one character of the string and compare it with the next upcoming character of the string.
  • If the same character comes in the string, we will remove this character by shifting all string character towards left.
  • After doing this, again will check to the next character, if match occurs just shift left again.
  • By following this approach, at the end we will have string with unique character.

C program to remove repeated character from string

#include <stdio.h>
#include <string.h>
int main()
{
  char str[256];
  printf("C Program to remove all duplicate characters \n");
  printf("Please enter a string : ");
  scanf("%[^\n]",str);
  int len= strlen(str);
  for(int i=0; i<len; i++){
    for(int j=i+1; j<len;j++){
      if(str[i] == str[j]){
        for(int k=j; k<len; k++){
          str[k] = str[k+1];
        }
        len--;
        j--;
      }
    }
  }
  printf("String after removing duplicate values = %s",str);
  return 0;
}

Output

C program to remove repeated character from string

[wpusb]