Miércoles 09 de noviembre de 2005 a las 12:34
Hola necesito ayuda la cuestion es que tengo que hacer un programa que lea un texto tiene que contar la longitud de todas las palabras (el texto termina con punto)que hay del uno al diez. Por ejemplo tiene que hacer: Hola soy Kity su amiga. palabras de dos letras:1 palabras de tres letras:1 palabras de cuatro letras:2 palabras de cinco letras:1 El codigo que tengo es este: #include main() { char texto[20]; int i=0; int pal1=0,pal2=0,pal3=0,pal4=0,pal5=0; int pal6=0,pal7=0,pal8=0,pal9=0,pal10=0; printf("Escribe un texto:n"); while(gets(texto) != ''){ i=strlen ( texto ); if (i == 1) pal1++; if (i == 2) pal2++; if (i == 3) pal3++; if (i == 4) pal4++; if (i == 5) pal5++; if (i == 6) pal6++; if (i == 7) pal7++; if (i == 8) pal8++; if (i == 9) pal9++; if (i == 10) pal10++;} printf("nPalabras de 1 letra: %dn",pal1); printf("Palabras de 2 letras: %dn",pal2); printf("Palabras de 3 letras: %dn",pal3); printf("Palabras de 4 letras: %dn",pal4); printf("Palabras de 5 letras: %dn",pal5); printf("Palabras de 6 letras: %dn",pal6); printf("Palabras de 7 letras: %dn",pal7); printf("Palabras de 8 letras: %dn",pal8); printf("Palabras de 9 letras: %dn",pal9); printf("Palabras de 10 letras: %dn",pal10); scanf(" "); } El problema es que este codigo no me lee las palabras en linea a fuerza le tengo que dar enter para que me separe las palabras.Si alguien me podria ayudar diciendome como hacerle para que me lo lea todo en linea y aun asi me siga contando las palabras bien.