标题:递归求括号匹配的问题问下,哪里错了
只看楼主
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
结帖率:69.23%
已结贴  问题点数:20 回复次数:2 
递归求括号匹配的问题问下,哪里错了
#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;
}
搜索更多相关主题的帖子: 左右 include content 
2015-07-10 13:08
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:20 
下班了,我才跟你说一句:“哪里错了”是你告诉别人,为什么会出错 或 怎么解决这个错误 才是别人回答你的内容。
贴个代码,问句“哪里错了”,别人连你想问什么都不知道,最起码你得描述一下你遇到的问题,比如编译失败,或比如运行结果不符合你的预期。
而且,你的代码执行时还需要用户输入,那么起码要给别人一个会导致运行失败的输入字符串吧?!
2015-07-10 16:34
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
得分:0 
好像很多逻辑上都有问题,我再自己改一下
2015-07-10 20:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-455279-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.247830 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved