/* programar una funcion: int * datos_frase(char*) recibe una frase y devuelve un arreglo de enteros que en cada posicion va a tener la cantidad de letras de cada palabra de la frase. Con lo cual, si mi frace es hola mundo, va a devolver un arreglo de 2 posiciones que va a tener un 4 y un 5. sin desperdiciar memoria. */
#include <stdio.h> #include <stdlib.h>
int * datos_frase (char * frase); int es_letra (char l);
int main() { int * palabras=datos_frase("Hola Mundo!, como estan?, yo muy muy muy muy muy bien"); printf("%d,%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",palabras[0],palabras[1], palabras[2], palabras[3],palabras[4],palabras[5], palabras[6], palabras[7],palabras[8],palabras[9], palabras[10], palabras[11]); free(palabras); return 0; } int * datos_frase (char * frase) { int a=10; int * palabras=(int *)malloc(sizeof(int)*a); if(palabras==NULL) printf("Falta de memoria"); char l; int i=0,j=0; int cont=0;