递归求括号匹配的问题问下,哪里错了
#include<stdio.h>void content(char a[],int i,int n)
{
int j;
if(a[i]==')') //当碰到了)括号,同时把左右括号去掉,并打印下标,数组大小改为n
{
printf("%d%d",i-2,i-1);
for(j=i;j<n;j++)
{
a[j-2]=a[j];
}
n=n-2;
}
if(a[i]=='(')//当遇到左括号,从第i+1个位置继续开始,数组大小不变
{
content(a,i++,n);
}
}
int main()
{
char a[100];
int i,j,len;
char ch;
while(scanf("%c",&a[i])){
len++;
if((ch=getchar())=='\n')
break;
}
content(a,1,len);
return 0;
}