Se non hai la necessità di memorizzarle in un array , basta una singola struttura!
Io parlo per linguaggio C e non C++ , crei un ciclo do while dove richiedi se vuole
inserire un nuovo contatto e memorizzi tutto in una struttura poi la scrivi nel file
con la funzione fwrite() crei una funzione per leggere il file con fread()
e una funzione per modificare il file aprendolo in scrittura e lettura e utilizzando la funzione
fwrite() e fseek()