Răspuns :
#include <iostream>
#include <cstring>
using namespace std;
int ok, n;
float aux1;
char aux2[50];
int main ()
{
cin >> n;
struct Elev {
char nume [50];
float media;
} E[100];
for (i = 1; i <= n; i++) {
cin.get (E[i].nume, 50);
cin >> E[i].media;
}
//facem buuble sort pentru structura in fct de medie:
while (ok == 0) {
ok = 1;
for (i = 1; i < n; i++)
if (E[i].media < E[i+1].media) {
aux1 = E[i].media;
E[i].media = E[i+1].media;
E[i+1].media = aux1;
strcpy (aux2, E[i].nume);
strcpy (E[i].nume, E[i+1].nume);
strcpy (E[i+1].nume, aux2);
ok = 0;
}
//se afiseaza elementele din structura sortate dupa medie
for (i = 1; i < n; i++)
cout << E[i].nume << " " << E[i].media << endl;
return 0;
}
ATENTIE! dupa ce introduci un nume, trebuie sa introduci caracterul ';'
Altfel, programul nu ruleaza cum trebuie.

Vă mulțumim pentru vizita pe site-ul nostru dedicat Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Ne bucurăm să vă revedem și vă invităm să ne adăugați în lista de favorite!