Programación General > C/C++

 funcion strstr

(1/1)

k4nnon:
hola soy nuevo por el foro y queria consultar unas dudas que tengo con mi programa.

el programa debe buscar una frase dentro de un string, donde la frase esta compuesto por 2 palabras "heavy metal" . y este debe contar la cantidad de veces que se encuentra o se forma dicha frase.

un ejemplo
heavymetalisheavymetal

la salida es 4 ya que se puede generar 4 veces la frase heavy metal

hasta el momento tengo esto


--- Código: ---
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

int main(){
    char a[1000],b[20]="heavyHEAVY",c[20]="metalMETAL";
    int i,j,suma=0;
        gets(a);
        for(i=0;i<strlen(a);i++)
        {
            if(strstr(a,b)!=NULL)
            {
                for(j=i;j<strlen(a);j++)
                if(strstr(a,c)!=NULL)
                {
                    suma++;
                }
                else
                {
                    break;
                }
            }
        }
        printf("\n%d",suma);
    return 0;
}

--- Fin del código ---

pero el programa siempre me arroja 0. plz si alguien me puede guiar.

saludos

chenech:
Estas seguro que es asi heavylismetal?
Ten en cuenta que tendrías que buscar h he hea heav heavy heavyl heavyls ... no se cuantas veces mas
luego empezando por el segundo carácter e ea eah eaha ehavy ...
y asi repitiendo tantas veces como caracteres hay en la frase, no te daría 4, sino cientos o miles dependiendo de la frase y palabras.

Navegación

[0] Índice de Mensajes

Ir a la versión completa