Habrá que leer línea por línea el fichero, luego separar estas líneas por los espacios y en cada palabra comprobar si es palabra, número o identificador, el separar se hace con la función strtok, haz tres funciones (esto te queda para ti)
que devuelvan true o false para sumar o no a cada tipo, así al final en los datos sPalabra, sNumero, sIdentifica tendrás la suma de cada uno:
FILE *fpFichero;
char *pPuntero;
char cCadena[75];
short sPalabra, sNumero, sIdentifica;
sPalabra = sNumero = sIdentifica = 0;
if((fpFichero = fopen("PRUEBA.TXT", "r")) != NULL)
{
while(fgets(cCadena, 70, fpFichero) != NULL) // Aquí leemos hasta el final del fichero por línea
{
pPuntero = strtok(cCadena, " ");
while(pPuntero != NULL) // Aquí partimos la línea leída por espacios
{
if(Palabra(pPuntero)) // Aquí llamaremos a una función que devuelva si es una palabra
sPalabra++;
if(Numero(pPuntero)) // Aquí llamaremos a una función que devuelva si es un número
sNumero++;
if(Identifica(pPuntero)) // Aquí llamaremos a una función que devuelva si es un identificador
sIdentifica++;
pPuntero = strtok(NULL, " ");
}
}
}
fclose(fpFichero);
amigo disculpa creo que encontre una mejor solucion para mi problema
es leer el archivo en un array de strings
#include <stdio.h>
#include <conio.h>
#define MAX_CHARS 20
typedef char string[MAX_CHARS+1];
main(){
int i;
string array[4];
FILE *data;
data = fopen("ard.txt","r");
for(i = 0; i < 4; i++)
{ fscanf(data, "%s", array
); }
printf("%s",array[3]);
getch();
}
el cual me separa cada palabra del txt y lo vueleve un string pero ahora como hago para que ese array de string sea dinamico solicito me puedar ayudar