diff --git a/cv10/program.c b/cv10/program.c index de10804..7c0472a 100644 --- a/cv10/program.c +++ b/cv10/program.c @@ -1,16 +1,9 @@ #include #include -#include #define MAX_STUDENTS 100 #define NAME_SIZE 50 -int compare_names(const void *a, const void *b) { - const char **name_a = a; - const char **name_b = b; - return strcmp(*name_a, *name_b); -} - int main() { int max_students, num_accepted = 0, num_students = 0; char names[MAX_STUDENTS][NAME_SIZE]; @@ -24,11 +17,10 @@ int main() { memset(names, 0, sizeof(names)); - while (fgets(temp_name, sizeof(temp_name), stdin) != NULL && num_accepted < max_students) { - // Remove the newline character from the temp_name array - temp_name[strcspn(temp_name, "\n")] = '\0'; + while (fgets(temp_name, sizeof(temp_name), stdin)!= NULL && num_accepted < max_students) { int i, found = 0; + for (i = 0; i < num_accepted; i++) { if (strcmp(names[i], temp_name) == 0) { found = 1; @@ -36,28 +28,35 @@ int main() { } } - if (!found && num_accepted < MAX_STUDENTS) { + if (!found) { strcpy(names[num_accepted], temp_name); num_accepted++; } num_students++; - - // Check if we have reached the maximum number of accepted students - if (num_accepted == max_students) { - break; // Exit the loop - } } - qsort(names, num_accepted, sizeof(names[0]), compare_names); - if (num_accepted == 0) { - printf("Ziadne prihlasky\n"); + printf("Ziadne prihlasky"); } else { printf("Prijati studenti:\n"); for (int i = 0; i < num_accepted; i++) { - printf("%s\n", names[i]); + printf("%s", names[i]); + } + + printf("\nNeprijati studenti:\n"); + for (int i = 0; i < num_students; i++) { + int found = 0; + for (int j = 0; j < num_accepted; j++) { + if (strcmp(names[j], temp_name) == 0) { + found = 1; + break; + } + } + if (!found) { + printf("%s", temp_name); + } } } return 0; -} +} \ No newline at end of file