Si consideri un file di testo semplice file_input che contiene le informazioni Nome, cognome, data di nascita e numero di matricola di un gruppo di studenti, formattati all'interno del file nel seguente modo:Nome1; Cognome1; gg/mm/aaaa; Matricola1; ..... NomeN; CognomeN; gg/mm/aaaa; MatricolaN;Si consideri inoltre il seguente tipo:typedef struct Studente { char Nome [20]; char Cognome [20]; char data_di_nascita [11]; unsigned int Matricola; } record_studente;Scrivere una funzione con prototipo:int scrivi_dati(char* file_input, char* file_output);che prende in input la stringa file_input che contiene il nome di un file di testo semplice, crea, per ogni riga (che corrisponde ad uno studente), una struttura di tipo record_studente e scrive tale record in un file binario dal nome contenuto nella stringa file_output . La funzione deve ritornare:
- -1 In caso di errore.
- 0 In caso di scrittura avvenuta con successo.
Si consideri il tipo di cui sopra. Scrivere una funzione con prototipo:int cancella_doppioni(char* file_binario);che prende in input la stringa file binario che contiene il nome di un file fatto di record_studente, e, per tutti i record che hanno valore uguale nel campo Matricola, pone il campo Matricola uguale a 0. La funzione da' in output:
- -1 in caso di errore;
- nr di "record cancellati" in caso di avvenuta "cancellazione".
![]() |
![]() |
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica ![]() |
|
![]() |
![]() |