Ciao a tutti, vi disturbo in quanto ho questo problema. Devo leggere un file e memorizzarlo in una struct; il file è fatto di un numero(sconosciuto, si solo che è max 100) di questi codici:

ABC 35
TRF 45
......

codice:
struct dati
{
   char lettere[4];
   int numero;
};
typedef struct dati autotreni;

int main ()

autotreni d[100];
int i=0;
FILE *trasporti

trasporti=fopen("trasporto.txt","r");

while(!feof(trasporti))
{
    fscanf(trasporti,"%s %d", d[i].lettere,&d[i].numero);
    i++
}
printf("d",i);
}
Il risultato di i che mi stampa, corrisponde a quanti elementi (codice-numero) ci sono nel file?? Perchè dovrebbe stamparmi 4 ma mi stampa 18!Dove sbaglio?

Grazie