#include <stdio.h>
#include <stdlib.h>
#define M 3
#define N 40
typedef struct studente{
char nome[N+1],cognome[N+1];
int matricola, voto;
}Studente;
int main()
{ Studente tmp;
int maxvoto=0;
int idxmaxvoto=-1;
Studente Corso[M];
int i;
printf("Inserire <Nome> <Cognome> <Matricola> <Voto>\n");
for (i=0; i<M; i++)
{
scanf("%s %s %d %d",Corso[i].nome,Corso[i].cognome,&Corso[i].matricola,&Corso[i].voto);
}
printf("Dati inseriti\n");
for (i=0; i<M; i++)
printf("%s\t\t%s\t\t%d\t\t%d\n",Corso[i].nome,Corso[i].cognome,Corso[i].matricola,Corso[i].voto);
for(i=0; i<M; i++){
if(maxvoto<Corso[i].voto){
maxvoto = Corso[i].voto;
idxmaxvoto=i;
}
}
printf("Lo studente con voto massimo(%d): %s %s\n",Corso[idxmaxvoto].voto,Corso[idxmaxvoto].nome,Corso[idxmaxvoto].cognome);
tmp= Corso[idxmaxvoto];
Corso[idxmaxvoto]=Corso[0];
Corso[0] =tmp;
printf("Scambio con posizione 0:\n");
for (i=0; i<M; i++)
printf("%s\t\t%s\t\t%d\t\t%d\n",Corso[i].nome,Corso[i].cognome,Corso[i].matricola,Corso[i].voto);
return 0;
}