52 lines
1.5 KiB
C
52 lines
1.5 KiB
C
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <string.h>
|
|
|
|
#define MAX_LENGTH 100 // Maximálna dĺžka mena študenta
|
|
#define MAX_STUDENTS 100 // Maximálny počet študentov
|
|
|
|
int compare(const void *a, const void *b) {
|
|
return strcmp(*(const char **)a, *(const char **)b);
|
|
}
|
|
|
|
int main() {
|
|
char prihlasky[MAX_STUDENTS][MAX_LENGTH]; // Pole pre uloženie prihlášok
|
|
int max_prijati, pocet_prihlasek = 0;
|
|
|
|
// Načítanie maximálneho počtu študentov na prijatie
|
|
if (scanf("%d", &max_prijati) != 1 || max_prijati <= 0) {
|
|
printf("Nespravny vstup\n");
|
|
return 1;
|
|
}
|
|
|
|
// Načítanie zoznamu prihlášok
|
|
while (scanf("%s", prihlasky[pocet_prihlasek]) == 1) {
|
|
pocet_prihlasek++;
|
|
}
|
|
|
|
// Kontrola, či neboli načítané žiadne prihlášky
|
|
if (pocet_prihlasek == 0) {
|
|
printf("Ziadne prihlasky\n");
|
|
return 1;
|
|
}
|
|
|
|
// Zoradenie zoznamu prihlášok podľa abecedy
|
|
qsort(prihlasky, pocet_prihlasek, sizeof(prihlasky[0]), compare);
|
|
|
|
// Výber študentov na prijatie podľa abecedy a maximálneho počtu
|
|
printf("Prijati studenti:\n");
|
|
for (int i = 0; i < max_prijati && i < pocet_prihlasek; i++) {
|
|
printf("%s\n", prihlasky[i]);
|
|
}
|
|
|
|
// Výpis neprijatých študentov
|
|
if (max_prijati < pocet_prihlasek) {
|
|
printf("Neprijati studenti:\n");
|
|
for (int i = max_prijati; i < pocet_prihlasek; i++) {
|
|
printf("%s\n", prihlasky[i]);
|
|
}
|
|
}
|
|
|
|
return 0;
|
|
}
|