应用题_括号配对

括号配对检查

检查表达式中的括号是否配对,
如果配对,则返回true
否则,返回false


// 源程序
// 功能:检查表达式中的括号是否配对
// 时间:21:35 2005-10-2
// 最后修改时间:21:35 2005-10-2

#include "iostream.h"

#define max 1024

bool bracketCheck( const char exp[] )
{
 char ch;
 int p = 0;
 ch = exp[p++];

 //char stack[max];
 int top = 0;
 while( ch )
 {
  if( ch == '(' )
  {
   top++;
   //stack[top] = ch;
  }
  else if( ch == ')' )
  {
   top--;
   if( top < 0 )
    return false;
   //if( stack[top] != '(' )
   // return false;
  }
  ch = exp[p++];
 }
 if( top != 0 )
  return false;

 return true;
}

void main()
{
 if( bracketCheck( "()()()())" ) )
  cout<<"it is ok"<<endl;
 else
  cout<<"it is not match"<<endl;
}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值