Witam. Mam zadanie:
Napisz funkcję PorownajTStudent() porównującą wartości dwóch zmiennych typu TStudent. Parametrami funkcji mają być dwa wskaźniki do zmiennych typu TStudent, zaś jej wartością liczba całkowita. Wynik funkcji ma nas informować o kolejności umieszczenia studentów na liście. Przyjmujemy, że porządek nazwisk na liście jest leksykograficzny. W przypadku identycznych nazwisk bierzemy pod uwagę imiona. Wynik funkcji ma być liczbą mniejszą od zera, jeśli pierwszy ze studentów powinien się znaleźć na liście alfabetycznej przed drugim, równy zero, jeśli imiona i nazwiska studentów są sobie równe lub większa od zera w przypadku, gdy pierwszy ze studentów powinien być umieszczony na liście po drugim studencie. Napisz program, który wykorzystując funkcję PorownajTStudent() dokona porównania dwóch zmiennych automatycznych oraz dwóch zmiennych dynamicznych. Potrzebne informacje wczytaj z klawiatury, zaś wynik działania obydwu porównań wydrukuj na ekranie.
I nie wiem jak zrobić to sortowanie.
Gdzieś coś widziałem o sortowaniu, ale to było sortowanie znaków w ciągu, a nie sortowanie ciągów np. w tablicy
Na razie mam coś takiego, czyli w sumie podstawy:
#include<iostream>
#include<conio.h>
using namespace std;
struct TStudent{
string imie;
string nazwisko;
};
int PorownajTStudent(TStudent *wska, TStudent *wskb){
}
void podaj_dane(TStudent *wsk, int ilu){
for(int i=0; i<ilu;i++){
cout<<wsk[i]<<"-a osoba: ";
cout<<"Podaj imie: ";
cin>>wsk[i]->imie;
cout<<"Podaj nazwisko: ";
cin>>wsk[i]->nazwisko;
}
}
int main(){
TStudent studenci[2];
podaj_dane(studenci, 2);
PorownajTStudent(studenci[0], studenci[1]);
getch();
return 0;
}