分不多,数据结构,求解。试写一个判别表达式中开、闭括号是否配对出现的算法。

/*顺序表exp表示表达式;*/
/*若exp中的括号配对,则返回TRUE,否则返回FALSE */
/*注:本函数不使用栈*/
{int i,count;

for(i=0;i<=exp.length;i++)
{
if(exp.elem+i=="(") ++count;
if(exp.elem+i==")") --count;
}
if(count=0)
return TRUE;
else
return FALSE;
}
编译没错 但是运行有错

第1个回答  推荐于2016-12-01
{int i,count = 0;
for(i=0;i<exp.length;i++)
{
if(*(exp.elem+i)=='(') ++count;
if(*(exp.elem+i)==')') --count;
}
if(count==0)

天亮了,楼主醒醒本回答被提问者采纳
第2个回答  2013-05-22
除了他们说的,还要注意中途判断是否有count小于0的情况,有直接就返回false
第3个回答  2013-05-22
if(count=0) 改为 if(count==0),试试
相似回答