汗 LZ的问题是我们数据结构的实验 该不是我们一个学校的吧?
#define maxsize 200
typedef struct stack{
char stack[maxsize];
int top;}stack;
int match(char *str)
{stack s;int i=0;s.top=-1; for(i=0;i<4;i++) printf("%c",str[i]);
i=0; while(i<=4){
switch(str[i]){
case '(' : s.stack[++s.top]='(';
i++;
break;
case '[' : s.stack[++s.top]='[';
i++;
break;
case ')' : if(s.top<0) return 0;
else if(s.stack[s.top]=='(') s.top--;
else return 0;
i++;
break;
case ']' : if(s.top<0) return 0;
else if(s.stack[s.top]==']') s.top--;
else return 0;
i++;
break;
default :i++;} }
printf("i=%d\n",i);
if(s.top>=0) return 0;
else return 1;
}
main()
{char str[4];int j,m;
for(j=0;j<4;j++) scanf("%c",&str[j]);
m=match(str);
if(m==0) printf("bu pibei");
else printf("bipei");
}