Funciona correctamente. ¿Habrás puesto "durmi" en vez de "durmio"? Entonce ssí que encontraría 2.
Y como detalle, identa el código. Tal como está, estácerca de ser ilegible.
#include <cstring>
#include <iostream>
using namespace std;
int contar(char texto[150], char buscar[150])
{
char *puntero;
int contador = 0;
puntero = strstr (texto, buscar);
while (puntero != NULL)
{
contador=contador+1;
puntero = strstr (puntero+strlen(buscar),buscar);
}
return contador;
}
int main()
{
char texto[150];
char palabra[150];
int contadorpalabra = 0;
cout<<"Suministre el texto de entrada:"<<endl;
gets(texto);
cout<<"Suministre la palabra a buscar:"<<endl;
gets(palabra);
contadorpalabra = contar(texto,palabra);
cout<<"\nLa palabra \""<<palabra<<"\" fue encontrada "<<contadorpalabra<<" veces"<<endl;
}
Y bueno. Las librerías se ponen con "<lib>". Con comillas solo se deberían poner tus includes (archivos que tengas en el proyecto o en alguna ruta en tu pc, vamos)
Las librerías de C++ son como las de C, peroquitando el ".h" y agregando una 'c' al principio. (stdio.h -> cstdio; string.h -> cstring) (A excepción de algunas como windows.h y conio.h)