Función que cuente el número de palabras que se encuentra en una cadena de texto
Publicado por Ismael (1 intervención) el 06/01/2020 13:51:32
Muy buenas, me llamo Ismael, y llevo muy poco tiempo medio programando en C en la asignatura de informática y y me han pedido una trabajo opcional y puntúa con nota si lo entregas y el último apartado no sé cómo hacerlo.Llevo ya varias horas intentando sacarlo, pero no comprendo como crear el código y me queda hasta el sábado 11, es decir en 5 días para la entrega y no quiero dejarlo sin hacer y además estoy interesado por mi mismo por como sería el código.
Si alguien domina bien el tema, Me harían un gran favor si me pueden decir cómo sería el código para esta función.
Mi idea sobre el código es que aunque la cadena sea de x por ejemplo [50] tamaño, pero si la cadena es menor que directamente solo recorra lo que realmente tiene la cadena que introducimos, y que empiece de 0 y vaya recorriendo el array uno uno con lo de la librería de string.h y cuando encuentre alguna carácter que no sea ningún signo de puntuación, entonces ahí es donde empieza la palabra y cuando encuentre un signo de puntuación incluido el espacio, acabe la palabra y ya tendría una palabra, y así sucesivamente hasta termine de evaluar toda la cadena, así mas o menos pienso qué es, pero no tengo ni idea de como crear el código.
El profesor me ha dicho que el código tiene que tener estas pautas:
La función tiene que tener como prototipo:
short numeroPalabras(const char*s);
y devuelve un valor entero igual al número de palabras.
consideramos una palabra una secuencia de uno o más caracteres alfanuméricos. No importa que estén separados por signos de puntuación, o por espacios. Por ejemplo, todas las cadenas mostradas a continuación tienen tres palabras: ---> se muestra en la imagen.
Muchas gracias,
Ismael
Si alguien domina bien el tema, Me harían un gran favor si me pueden decir cómo sería el código para esta función.
Mi idea sobre el código es que aunque la cadena sea de x por ejemplo [50] tamaño, pero si la cadena es menor que directamente solo recorra lo que realmente tiene la cadena que introducimos, y que empiece de 0 y vaya recorriendo el array uno uno con lo de la librería de string.h y cuando encuentre alguna carácter que no sea ningún signo de puntuación, entonces ahí es donde empieza la palabra y cuando encuentre un signo de puntuación incluido el espacio, acabe la palabra y ya tendría una palabra, y así sucesivamente hasta termine de evaluar toda la cadena, así mas o menos pienso qué es, pero no tengo ni idea de como crear el código.
El profesor me ha dicho que el código tiene que tener estas pautas:
La función tiene que tener como prototipo:
short numeroPalabras(const char*s);
y devuelve un valor entero igual al número de palabras.
consideramos una palabra una secuencia de uno o más caracteres alfanuméricos. No importa que estén separados por signos de puntuación, o por espacios. Por ejemplo, todas las cadenas mostradas a continuación tienen tres palabras: ---> se muestra en la imagen.
Muchas gracias,
Ismael
Valora esta pregunta
0