99 lines
2.8 KiB
C
99 lines
2.8 KiB
C
/******************************************************************************
|
|
|
|
Welcome to GDB Online.
|
|
GDB online is an online compiler and debugger tool for C, C++, Python, Java, PHP, Ruby, Perl,
|
|
C#, VB, Swift, Pascal, Fortran, Haskell, Objective-C, Assembly, HTML, CSS, JS, SQLite, Prolog.
|
|
Code, Compile, Run and Debug online from anywhere in world.
|
|
|
|
*******************************************************************************/
|
|
#include <stdio.h>
|
|
#include <stdlib.h>
|
|
#include <ctype.h>
|
|
#define fullSIZE 1000
|
|
#define wSIZE 100
|
|
#include <string.h>
|
|
|
|
int main()
|
|
{
|
|
int SIZE = 0;
|
|
if(!(scanf("%d", &SIZE))){
|
|
printf("Nespravny vstup\n");
|
|
return 0;
|
|
}
|
|
if(SIZE < 1){
|
|
printf("Nespravny vstup\n");
|
|
return 0;
|
|
}
|
|
int pm = 0;
|
|
char** pole_smernikov = malloc(fullSIZE * sizeof(char));
|
|
int k = 0;
|
|
char* line = malloc(wSIZE * sizeof(char));
|
|
size_t pocet_znakov = 0;
|
|
int antiInfC = 0;
|
|
char r = 'a';
|
|
while (fgets(line,wSIZE,stdin)) {
|
|
k = 0;
|
|
pocet_znakov = strlen(line);
|
|
char* all = malloc(pocet_znakov);
|
|
memcpy(all, line, pocet_znakov);
|
|
for(int x = 0; x < pm; x++){
|
|
if(memcmp(pole_smernikov[x], line, pocet_znakov) == 0){
|
|
k++;
|
|
}
|
|
}
|
|
if(0 == k){
|
|
pole_smernikov[pm] = all;
|
|
pm++;
|
|
}
|
|
if(antiInfC == 0){
|
|
antiInfC++;
|
|
continue;
|
|
}
|
|
if((line[0] == '\n' || isalpha(line[0])!=0 ) && antiInfC == 1 && r == '\n') {
|
|
break;
|
|
}
|
|
r = line[0];
|
|
}
|
|
free(line);
|
|
k = 0;
|
|
int i = 0;
|
|
i = 0;
|
|
while (i < pm){
|
|
for(int j = 0+1; j < pm-i; j++){
|
|
if(0 < strcmp(pole_smernikov[j-1], pole_smernikov[j])){
|
|
char* temp = pole_smernikov[j];
|
|
pole_smernikov[j] = pole_smernikov[j - 1];
|
|
pole_smernikov[j-1] = temp;
|
|
}
|
|
}
|
|
i++;
|
|
}
|
|
if(NULL == pole_smernikov[1]){
|
|
puts("Ziadne prihlasky");
|
|
return 0;
|
|
}
|
|
puts("Prijati studenti:");
|
|
for(int i = 0+1; i < 1+SIZE; i++){
|
|
if(pole_smernikov[i] != NULL){
|
|
printf("%s", pole_smernikov[i]);
|
|
} else{
|
|
|
|
}
|
|
free(pole_smernikov[i]);
|
|
}
|
|
int rra = -1;
|
|
pm = pm + rra;
|
|
if(0 > (SIZE - pm)){
|
|
puts("Neprijati studenti:");
|
|
for(int i = SIZE+1; i<pm+1; i++){
|
|
printf("%s", pole_smernikov[i]);
|
|
|
|
free(pole_smernikov[i]);
|
|
}
|
|
}
|
|
free(pole_smernikov);
|
|
|
|
return 0;
|
|
}
|
|
|