#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct {
char nome[256] ;
char cognome[256] ;
int voto[3]; int altezza;
int peso;
int cucina;} MissItalia;
void inserisci_miss(MissItalia *Concorso, int i);void copia_miss(MissItalia ragazza1, MissItalia *ragazza2);void stampa_concorso(MissItalia *Concorso, int dim);
int main()
{
MissItalia *Concorso;
int dim;
int i;
printf("Quante miss sono in concorso? --> ");
scanf("%d", &dim); Concorso = (MissItalia *) calloc (dim, sizeof(MissItalia));
if (Concorso == NULL) {
printf("E' finita la memoria");
exit(-1);
}
for (i=0; i<dim; i++)
inserisci_miss (Concorso, i);
copia_miss(Concorso[0], &Concorso[dim-1]);
stampa_concorso(Concorso, dim);
free(Concorso);
fflush(stdin);
getchar();
exit(0);
}
void inserisci_miss(MissItalia *Concorso, int i)
{
printf("Dammi il nome della miss %d --> ", i);
scanf("%s", Concorso[i].nome );
printf("Dammi il cognome della miss %d --> ", i);
scanf("%s", Concorso[i].cognome );
Concorso[i].altezza = 180;
Concorso[i].voto[0] = 80;
Concorso[i].voto[1] = 90;
Concorso[i].voto[2] = 99;
Concorso[i].peso = 78;
Concorso[i].cucina = 0;}
void copia_miss(MissItalia ragazza1, MissItalia *ragazza2)
{
strcpy(ragazza2->nome, ragazza1.nome);
strcpy(ragazza2->cognome, ragazza1.cognome);
ragazza2->altezza = ragazza1.altezza;
ragazza2->voto[0] = ragazza1.voto[0];
ragazza2->voto[1] = ragazza1.voto[1];
ragazza2->voto[2] = ragazza1.voto[2];
ragazza2->peso = ragazza1.peso ;
ragazza2->cucina = ragazza1.cucina;
}
void stampa_concorso(MissItalia *Concorso, int dim){
int i;
for (i=0; i<dim; i++)
printf("\n\n miss %s ", Concorso[i].nome);
}