#include #include #include #define MAX_STUDENTS 100 #define NAME_SIZE 50 int compareStrings(const void *a, const void *b) { return strcmp((const char *)a, (const char *)b); } int main() { int max_students, num_accepted = 0, num_students = 0; char names[MAX_STUDENTS][NAME_SIZE]; char temp_name[NAME_SIZE]; scanf("%d", &max_students); if (max_students <= 0 || max_students > MAX_STUDENTS) { printf("Nespravny vstup\n"); return 1; } memset(names, 0, sizeof(names)); while (fgets(temp_name, sizeof(temp_name), stdin) != NULL && num_accepted < max_students) { int i, found = 0; // // Remove newline character if present // temp_name[strcspn(temp_name, "\n")] = '\0'; for (i = 0; i < num_accepted; i++) { if (strcmp(names[i], temp_name) == 0) { found = 1; break; } } if (!found) { strcpy(names[num_accepted], temp_name); num_accepted++; } num_students++; } if (num_accepted == 0) { printf("Ziadne prihlasky"); } else { qsort(names, num_accepted, sizeof(names[0]), compareStrings); printf("Prijati studenti:\n"); for (int i = 0; i < num_accepted; i++) { printf("%s\n", names[i]); } } // if (num_accepted < num_students) { // printf("Neprijati studenti:"); // for (int i = 0; i < max_students; i++) { // if (names[i][0] == '\0') { // printf("%s", names[i]); // } // } // } return 0; }