hai ragione scusa, correggendo l errore e semplificando ulteriormente il problema,supponiamo che voglio caricare solo il primo studente nel vettore e stampare il suo contenuto il codice è
fscanf(f, "%s:%s:%d", v[0].nome, v[0].cognome, &v[0].matricola)
printf(" %s %s %d", v[0].nome, v[0].cognome, v[0].matricola);

ma invece di stampare Rossi Mario 2334445 mi stampa
Rossi:Mario:234445e altre schifezze, come mai?
in poche parole la fscanf non formatta come si deve l input