Update a1/program.c
This commit is contained in:
parent
ce85b8fd29
commit
4fde67b65b
17
a1/program.c
17
a1/program.c
@ -29,7 +29,6 @@ int main() {
|
||||
char stack[100];
|
||||
int top = -1;
|
||||
|
||||
// printf("");
|
||||
fgets(input, 101, stdin);
|
||||
|
||||
printf("Read: %s", input);
|
||||
@ -46,15 +45,12 @@ int main() {
|
||||
}
|
||||
} else if (isClosing(current)) {
|
||||
if (top == -1) {
|
||||
printf("Unexpected closing bracket %c in %d\n", current, i);
|
||||
printf("Unexpected closing bracket %c at position %d\n", current, i);
|
||||
return 0;
|
||||
}
|
||||
if (!isMatching(stack[top], current)) {
|
||||
printf("Crossed bracket '%c' in %d , expected \n", current, i);
|
||||
(stack[top] == '{') ? '}' :
|
||||
(stack[top] == '[') ? ']' :
|
||||
(stack[top] == '(') ? ')' : '>',
|
||||
current, i;
|
||||
char expected = expectedClosing(stack[top]);
|
||||
printf("Crossed bracket '%c' at position %d, expected '%c'\n", current, i, expected);
|
||||
return 0;
|
||||
}
|
||||
top--;
|
||||
@ -62,8 +58,11 @@ int main() {
|
||||
}
|
||||
|
||||
if (top != -1) {
|
||||
char expected = expectedClosing(stack[top]);
|
||||
printf("Missing closing brackets: %c\n", expected);
|
||||
printf("Missing closing brackets: ");
|
||||
while (top != -1) {
|
||||
printf("%c", expectedClosing(stack[top--]));
|
||||
}
|
||||
printf("\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user