1 /* Pseudocódigo:
 2    Mientras no llegue al fin de arcivo, leer un caracter
 3       si el caracter pertenece a una palabra
 4          aumento la longitud de la palabra
 5          indicar que estoy en una palabra
 6       sino
 7          si estaba en una palabra
 8             aumento el contador para esa longitud
 9             e indico que ya no estoy en una palabra
10          fin si
11       fin si
12    Fin Mientras
13 */
14 #include <stdio.h>
15 
16 #define N 25
17 
18 int main()
19 {  
20    int c, enpal = 0, len = 0, i;
21    int word[N] = {0};
22    
23    
24    while((c=getchar())!=EOF)
25    {
26       if (( c >= 'a' && c <= 'z' ) || ( c >= 'A' && c <= 'Z'))
27       {
28          len++;
29          enpal=1;
30       }
31       else if (enpal)
32       {
33             word[len]++;
34             len=0;            
35             enpal = 0;
36       } 
37    }
38       
39    if (enpal)
40       word[len]++;
41 
42    for (i=1; i< N; i++)
43       printf("Word[%d] = %d\n",i,word[i]);
44 
45    return 0;
46 }


syntax highlighted by Code2HTML, v. 0.9.1