C语言求助
查看原帖
C语言求助
592342
WA_automat楼主2022/3/19 13:53
#include<stdio.h>
#include<string.h>
#include<stdbool.h>
#define MAXSIZE 20
typedef struct {
	int num[MAXSIZE];
	int top;
}stack;
void init(stack* S);
void Push(stack* S);
void Pop(stack* S);
bool isempty(stack S);
int main(void)
{
	stack s;
	char ar[256];
	init(&s);
	scanf("%s", ar);
	for (int i = 0; i < strlen(ar); i++)
	{
		if (ar[i] == '(')
			Push(&s);
		else if (ar[i] == ')')
			Pop(&s);
	}
	if (isempty(s))
		printf("YES");
	else
		printf("NO");
	return 0;
}
void init(stack* S)
{
	for (int i = 0; i < MAXSIZE; i++)
		S->num[i] = 0;
	S->top = -1;
}
void Push(stack* S)
{
	S->num[++S->top] = 1;
}
void Pop(stack* S)
{
	S->num[S->top--] = 0;
}
bool isempty(stack S)
{
	if (S.top == -1)
		return 1;
	else
		return 0;
}
2022/3/19 13:53
加载中...