Le dije que me rendía y que me dijera como hacerlo pero se nego jajaja.
Entrada
Un texto formado por caracteres alfabéticos y blancos. Cada palabra del texto está formada exclusivamente por caracteres alfabéticos y mide entre 1 y 10 caracteres de longitud.
Salida
La cantidad de veces que aparece la palabra "sak" o algo parecido: cualquier cadena de mayúsculas o minúsculas que empiece con una o más "s", siga con una o más "a" y termine con una o más "k".
Llevo esto hasta ahora.
Código:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char texto[300];
int longi, x=0;
int saltos=0;
gets(texto);
longi = strlen (texto);
for(x=0; x<longi; x++){
if(texto[x]==' ');
else{
if(texto[x]=='s'||texto[x]=='S'){
while(texto[x]=='s'||texto[x]=='S'){
x++;
}
if(texto[x]=='a'||texto[x]=='A'){
while(texto[x]=='a'||texto[x]=='A'){
x++;
}
if(texto[x]=='k'||texto[x]=='K'){
while(texto[x]=='k'||texto[x]=='K'){
x++;
}
if(texto[x]==' '||texto[x]=='\0'){
saltos++;
}
}
}
}
}
}
printf("%d", saltos);
}
Casi funciona bien. El problema es que cuenta palabras como "asak" o "tarsak" por que tiene las combinaciones de s, a y k.