int separador (int ch)
{
return (ch==' ') || (ch=='t') || (ch=='n');
}
int main ()
{
FILE * pf;
char fichero[100];
long contador_caracteres;
long contador_palabras;
long contador_lineas;
int actual;
int prev;
pf
=fopen ("c:/texto.txt","r+");
// Inicialización de los contadores
contador_caracteres = 0;
contador_palabras = 0;
contador_lineas = 1;
// Lectura de los datos de entrada
prev = ' ';
while (pf != EOF) {
contador_caracteres ++;
// ¿Fin de línea?
if (pf=='n')
contador_lineas++;
// ¿Comienzo de una nueva palabra?
if (!separador(pf) && separador(prev))
contador_palabras++;
// Siguiente carácter
prev = actual;
//fichero= getchar();
}
// Resultado
printf("%ld caracteresn", contador_caracteres
); printf("%ld palabrasn", contador_palabras
); printf("%ld líneasn", contador_lineas
);
return 0;
}