24.11.2.24011730. Napisati program koji traži od korisnika da unese niz imena i prezimena studenata (broj studenata se prethodno unosi sa tastature) u niz nul-terminiranih stringova (tj. u dvodimenzionalni niz znakova), a zatim ispisuje sva unesena imena sortirana u abecedni poredak. Za sortiranje koristiti postupak sortiranja izborom.

Opis rješenja:

Listing programa:

#include <iostream>
#include <conio.h>
#include <cstring>

using namespace std;
int main(){
char st[10][30];
int n1,n;
cin>>n1;
n=n1;
cin.ignore(100,'\n');
for(int i=0;i<n;i++)
    cin.getline(st[i],sizeof st[i]);
for(int i=0;i<n-1;i++){
    char (*min)[30]=&st[i];
    for(int j=i+1;j<n;j++){
        if(strcmp(st[j],*min)<0)
                min=&st[j];
    }
    char pom[30];
    strcpy(pom,st[i]);
    strcpy(st[i],*min);
    strcpy(*min,pom);
}
cout<<endl;
for(int i=0;i<n;i++){    
    cout<<st[i]<<endl;
}

getch();
return 0;
}

Ispis na ekranu:

Riješeni zadaci 2    Index