tenes que hacer un bucle que recorra caracter por caracter la cadena hasta llegar al final (caracter nulo, 0x00 o '\0').
por cada caracter que analizes, lo comparas con un espacio, o sea ' '. este caracter nos va a indicar el final de una palabra.
lo que tenes que hacer es llevar dos contadores, uno para la cantidad de palabras desiguales a 4, y otro para la cantidad de caracteres que tiene la palabra acutal. ademas, si queres ignorar multiples espacios, (ejemplo: "hola mundo asd"), deberias guardar el ultimo caracter analizado y compararlo con el actual en caso de que sea un espacio, para ignorarlo.
cuando se encuentre un espacio, tomas el contador de caracteres y te fijas si es igual a 4. si no lo es, sumas uno al contador de palabras, caso contrario nada. en ambos casos deberas reiniciar el contador de caracteres para que este en 0 para la proxima palabra.
como dijimos que un espacio va a indicar el final de una palabra, es posible que en la ultima palabra ese espacio no este, entonces deberas chequear eso tambien. al final de la funcion, si el ultimo caracter es un espacio, retornas el numero de palabras normalmente. en caso de que no sea un espacio, te fijas si la ultima palabra es desigual a 4, y si es asi retornas numero de palabras mas uno, caso contrario numero de palabras normalmente.
por cada caracter que analizes, lo comparas con un espacio, o sea ' '. este caracter nos va a indicar el final de una palabra.
lo que tenes que hacer es llevar dos contadores, uno para la cantidad de palabras desiguales a 4, y otro para la cantidad de caracteres que tiene la palabra acutal. ademas, si queres ignorar multiples espacios, (ejemplo: "hola mundo asd"), deberias guardar el ultimo caracter analizado y compararlo con el actual en caso de que sea un espacio, para ignorarlo.
cuando se encuentre un espacio, tomas el contador de caracteres y te fijas si es igual a 4. si no lo es, sumas uno al contador de palabras, caso contrario nada. en ambos casos deberas reiniciar el contador de caracteres para que este en 0 para la proxima palabra.
como dijimos que un espacio va a indicar el final de una palabra, es posible que en la ultima palabra ese espacio no este, entonces deberas chequear eso tambien. al final de la funcion, si el ultimo caracter es un espacio, retornas el numero de palabras normalmente. en caso de que no sea un espacio, te fijas si la ultima palabra es desigual a 4, y si es asi retornas numero de palabras mas uno, caso contrario numero de palabras normalmente.