Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void creaElenco(FILE* fp){
- fprintf(fp, "\tELENCO STUDENTI CdL INFORMATICA\n\n");
- int i=0;
- int n; //Variabile che conterrà il numero di entry effettivamente presenti nell'array
- int continua; //Variabile di controllo sulla fine del ciclo di immissione
- int checkprint; //Variabile di controllo errori in scrittura su file
- printf("inserire nell'ordine cognome, nome, matricola.");
- do{
- printf("NUOVO RECORD:\n");
- printf("Cognome: ");
- //scanf("%s", lista[i].cognome); /*!!!!!CON SCANF FUNZIONA*/
- gets(lista[i].cognome); /*CON GETS NO*/
- printf("Nome: ");
- scanf("%s", lista[i].nome);
- printf("Matricola: ");
- scanf("%d", &lista[i].matricola);
- i++;
- printf("Premere 1 per inserire un nuovo record, un altro valore per terminare l'immissione: ");
- scanf("%d", &continua);
- }
- while(i<DIM&&continua==1);
- n=i; //Memorizzo in n il numero di iterazioni del ciclo di immissione eseguiti,
- //ovvero il numero dei record memorizzati
- ordinaElenco(0, n-1); //Chiamo la funzione "ordinaElenco", con argomenti l'indice della prima struttura (0), e quello dell'ultima (n-1)
- for(i=0; i<n; i++){
- checkprint=fprintf(fp, "%s\n%s\n%d\n\n", lista[i].cognome, lista[i].nome, lista[i].matricola);
- if(checkprint<0){ //fscanf restituisce un numero negativo in caso di errore di scrittura
- printf("Si è verificato un errore di scrittura imprevisto sul file.\n");
- break; //Termina il ciclo di immissione dati
- }
- }
- if (checkprint>=0)printf("FILE CREATO\n");
- }
Add Comment
Please, Sign In to add comment