diff --git a/cv5/program.c b/cv5/program.c index dd82770..b1bad8f 100644 --- a/cv5/program.c +++ b/cv5/program.c @@ -1,7 +1,6 @@ #include #include #include -#include #define SIZE 100 @@ -35,7 +34,7 @@ int main() { memset(line, 0, SIZE); char *r = fgets(line, SIZE, stdin); - // check if the line is empty or just contains newline character + // check if the line is empty if (r == NULL || (r[0] == '\n' && strlen(r) == 1)) { // end of input break; @@ -44,22 +43,20 @@ int main() { // parse the string and extract number of votes and student name int votes; char name[SIZE]; - - // check if sscanf successfully parsed the input - if (sscanf(line, "%d %[^\n]", &votes, name) != 2 || votes < 0) { - // error, input was not in expected format or votes are negative - // print error message and continue to next line - fprintf(stderr, "Nepodarilo nacitat nic\n"); - continue; + if (sscanf(line, "%d %[^\n]", &votes, name) != 2) { + // error, input was not in expected format + // print error message and exit + fprintf(stderr, "Nepodarilo␣nacitat␣nic\n"); + return 1; } // check if this student already exists - bool found = false; + int found = 0; for (int i = 0; i < size; i++) { if (strcmp(students[i].name, name) == 0) { // add votes to existing student students[i].votes += votes; - found = true; + found = 1; break; } }