Initialization
This commit is contained in:
parent
b07dd7c0a0
commit
00c0b044b6
@ -1,6 +1,7 @@
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#define SIZE 100
|
||||
|
||||
@ -34,7 +35,7 @@ int main() {
|
||||
memset(line, 0, SIZE);
|
||||
char *r = fgets(line, SIZE, stdin);
|
||||
|
||||
// check if the line is empty
|
||||
// check if the line is empty or just contains newline character
|
||||
if (r == NULL || (r[0] == '\n' && strlen(r) == 1)) {
|
||||
// end of input
|
||||
break;
|
||||
@ -43,19 +44,22 @@ int main() {
|
||||
// parse the string and extract number of votes and student name
|
||||
int votes;
|
||||
char name[SIZE];
|
||||
if (sscanf(line, "%d %[^\n]", &votes, name) != 2) {
|
||||
// error, input was not in expected format
|
||||
// print error message and exit
|
||||
break;
|
||||
|
||||
// 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;
|
||||
}
|
||||
|
||||
// check if this student already exists
|
||||
int found = 0;
|
||||
bool found = false;
|
||||
for (int i = 0; i < size; i++) {
|
||||
if (strcmp(students[i].name, name) == 0) {
|
||||
// add votes to existing student
|
||||
students[i].votes += votes;
|
||||
found = 1;
|
||||
found = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user