Pentru o grupa de studenti, secretara facultatii are nevoie de numele, prenumele si data nasterii fiecarui student. Sa se ordoneze studentii alfabetic, dupa nume, iar pentru studentii cu acelasi nume dupa prenume.
Răspunsuri la întrebare
Răspuns de
1
Salut!
Ai rezolvarea in C++ mai jos
#include <iostream>
#include <cstring>
using namespace std;
struct student
{
char nume[21];
char prenume[21];
int data_nastere;
};
student a[1001];
int main()
{
int n;
cin >> n;
for (int i = 1; i <= n; ++i)
{
cin >> a[i].nume >> a[i].prenume >> a[i].data_nastere;
}
for (int i = 1; i < n; ++i)
{
for (int j = i + 1; j <= n; ++j)
{
if (strcmp(a[i].nume, a[j].nume) > 0)
{
swap(a[i], a[j]);
}
if (strcmp(a[i].nume, a[j].nume) == 0)
{
if (strcmp(a[i].prenume, a[j].prenume) > 0)
{
swap(a[i], a[j]);
}
}
}
}
for (int i = 1; i <= n; ++i)
{
cout << a[i].nume << " " << a[i].prenume << " " << a[i].data_nastere << '\n';
}
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Informatică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă