Sortarea unui vector de persoane după înălțime

Cerința problemei:

Se consideră o structură Persoana definită astfel:

struct Persoana {
string nume;
int varsta;
float inaltime;
};

Cerință:

  • Memorati informațiile într-un vector de persoane.
  • Sortează vectorul crescător după înălțime.
  • Afișează pe ecran lista persoanelor sortate, fiecare pe o linie
#include <iostream>
#include <string>
using namespace std;

struct Persoana {
    string nume;
    int varsta;
    float inaltime; 
};

int main() {
    Persoana v[] = {
        {"Ana", 20, 1.70},
        {"Ion", 22, 1.80},
        {"Mara", 19, 1.65},
        {"Paul", 21, 1.75}
    };
    int n = sizeof(v)/sizeof(v[0]);

  
    for (int i = 0; i < n-1; i++) {
        for (int j = i+1; j < n; j++) {
            if (v[i].inaltime > v[j].inaltime) {
                Persoana aux = v[i];
                v[i] = v[j];
                v[j] = aux;
            }
        }
    }

    cout << "Persoane sortate crescator dupa inaltime:\n";
    for (int i = 0; i < n; i++) {
        cout << v[i].nume << " " << v[i].varsta 
             << " ani " << v[i].inaltime << " m\n";
    }

    return 0;
}