/* variante di struttura_studenti_1.c passaaggio a function della struttura */ #include #include #include //------------------------------------------------------------ /* struttura definita all'esterno del main, in modo che sia riconosciuta anche altrove (nella function) */ struct Studente { char nome[30]; char cognome[30]; int annoNascita; int voti[30]; int NrEsami; }; //----------------------------------------------------------- float calcolaMedia(struct Studente *stud) { int i, somma; for(i=somma=0; iNrEsami; somma+=stud->voti[i++]) ; return( (float) somma / (float) stud->NrEsami ); } //------------------------------------------------------------ int main() { int i, s; struct Studente studenti[10]; int NrStudenti = 0; strcpy(studenti[0].nome, "Antonio"); strcpy(studenti[0].cognome, "Persichetti"); studenti[0].annoNascita = 1996; NrStudenti++; strcpy(studenti[1].nome, "Daniele"); strcpy(studenti[1].cognome, "Zurlo"); studenti[1].annoNascita = 1995; NrStudenti++; strcpy(studenti[2].nome, "Giuseppe"); strcpy(studenti[2].cognome, "Garibaldi"); studenti[2].annoNascita = 1997; NrStudenti++; strcpy(studenti[3].nome, "Giuseppe"); strcpy(studenti[3].cognome, "Mazzini"); studenti[3].annoNascita = 1996; NrStudenti++; strcpy(studenti[4].nome, "Alessandro"); strcpy(studenti[4].cognome, "Manzoni"); studenti[4].annoNascita = 1997; NrStudenti++; // mettiamo 'a caso' i voti for (s=0; s