Problema 3.
Se citesc datele a n elevi(nume,media pe semestrul I, media pe semestrul al II-lea,numarul de absente);Ordonati descrescator dupa media pe semestrul I.
#include <iostream>
#include<cstring>
using namespace std;
typedef struct elev
{
char nume[50];
float m1,m2;
int abs;
}e;
e v[100];
int main()
{int i,j,n;
float aux;
char naux[50];
cout<<"n= ";
cin>>n;
for(i=1;i<=n;i++)
{
cout<<"nume elev: "<<" ";
cin>>v[i].nume;
cout<<"media pe semestrul I: "<<" ";
cin>>v[i].m1;
cout<<"media pe semestrul al II-lea: "<<" ";
cin>>v[i].m2;
cout<<"numar absente: "<<" ";
cin>>v[i].abs;
cout<<endl;
}
for(i=1;i<=n;i++)
for(j=i+1;j<=n;j++)
if(v[i].m1<v[j].m2)
{
aux=v[i].m1;
v[i].m1=v[i].m2;
v[i].m2=aux;
strcpy(naux,v[i].nume);
strcpy(v[i].nume,v[j].nume);
strcpy(v[j].nume,naux);
}
for(i=1;i<=n;i++)
cout<<v[i].nume<<" ";
return 0;
}
Niciun comentariu:
Trimiteți un comentariu