#include<stdio.h>
#define MAX 100
int match(char *str)
{
char stack[MAX],*p=stack;
while(*str)
{
switch(*str)
{
case '(':
{
*p++=*str;
break;
}
case ')':
{
if(*--p!='(')
return 0;
break;
}
case '[':
{
*p++=*str;
break;
}
case ']':
{
if(*--p!='[')
return 0;
break;
}
case '{':
{
*p++=*str;
break;
}
case '}':
{
if(*--p!='{')
return 0;
break;
}
}
str++;
}
if(stack==p)
return 1;
else
return 0;
}
int main()
{
char str[MAX];
gets(str);
if(match(str))
{
printf("match\n");
}
else
{
printf("not match\n");
}
return 0;
}
简单括号匹配code
最新推荐文章于 2024-02-21 22:10:34 发布