Se dau n elevi. Pentru acestia  se citesc: numele şi două note la matematica. Să se calculeze media fiecărui elev. Să se afişeze elevii în ordinea descrescătoare a mediilor, iar pentru medii egale, în ordine alfabetică

#include<iostream.h>

#include<string.h>

struct elev

{char nume[25];

 int n1,n2;

 float media;

};

elev a[25];

int n;

void citire()

{int i;

  for(i=1; i<=n; i++)

  {cout<<"numele: "; cin.get();cin.get(a[i].nume,20,'\n');

   cout<<"nota1: "; cin>>a[i].n1;

   cout<<"nota2: "; cin>>a[i].n2;

   a[i].media=(((float)a[i].n1+a[i].n2)/2);

   }

}

void afisare()

{int i;

 for(i=1; i<=n; i++)

 cout<<a[i].nume <<" "<<a[i].n1<<" "<<a[i].n2<<" "<<a[i].media<<endl;

}

void ordonare()

{int i,g;

 elev aux;

 do{

  g=1;

  for(i=1; i<n; i++)

   if((a[i+1].media>a[i].media)||(a[i+1].media==a[i].media && strcmp(a[i+1].nume,a[i].nume)<0))

       {aux=a[i+1];   a[i+1]=a[i];    a[i]=aux;    g=0;   }

 } while(!g);

}

void main()

  cout<<"n=";cin>>n;

  citire(); afisare();

  ordonare();

  cout<<"Elevii in ordinea descrescatoare a mediilor"<<endl;

  afisare();

}