// squeeze will delete chars in the original string #include <stdio.h> void squeeze(char [], char []); main() { char s1[] = "Thiis is a string"; char s2[] = "gicsx "; printf("Chars to delete: %s\n", s2); printf("Before squeezing: %s\n", s1); squeeze(s1, s2); printf("After squeezing: %s\n", s1); } void squeeze(char s1[], char s2[]) { int i, j, k; // array subscripts for (i=0; s2[i] != '\0'; i++) { // process chars to delete for (j=k=0; s1[j] != '\0'; j++) { // process original string if (s1[j] != s2[i]) { s1[k++] = s1[j]; // pull back the next character } } s1[k] = '\0'; // terminate string with a null character } }