/*Entrar una cadena desde teclado y a continuacion entrar una palabra, comprobar
si la palabra esta dentro de la cadena y si es asi, sustituir esa por #, y
visualizar la cadena tratada.*/
#include<stdio.h>
#include<conio.h>
#include<string.h>
#include<stdlib.h>
void main ()
{
char frase[100], busca[50];
char *result;
int i,j, k, inicio, fin, sw=0;
printf ("Introduce una frase : ");
gets (frase);
printf ("palabra a eliminar ");
gets (busca);
for(i=0;i<strlen (frase);i++)
{
//almacenamos inicio para no perderlo cuando incrementos en el segundo
//for la i
inicio=i;
for(j=0;j<strlen(busca);j++)
{
if(frase[i]==busca[j])
{
//la ultimo valor q se almacena en fin sera el indice final de busqueda
fin=i;
i++;
//conmutador para saber que hemos entrado a comparar palabra, si cuando
//terminemos el if sigue a 1 el sw es q la palabra esta encontrado
//con exito
sw=1;
}
else
{
/*si la ultima vez q entramos al bucle if en esta pasada del for
entramosen el else quiere decir q la palabra a buscar no coincide
en esta interraccion con la palabra en la frase*/
sw=0;
}
}
//podrimaos poner un solo if..pero mejor asi por claridad
if(sw==1)
{
if((frase[inicio-1]==' ' && frase[fin+1]==' ') || (inicio==0 && frase[fin+1]==' ') || (fin==strlen(frase)-1 && frase[inicio-1]==' '))
{
for(k=inicio;k<fin+1;k++)
{
frase[k]=' ';
}
}
}
}
printf ("\n%s",frase);
}