读书人

上下括号是否匹配用的栈

发布时间: 2012-09-16 17:33:16 作者: rapoo

左右括号是否匹配用的栈

代码如下:

// isMatch.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include<stack>using namespace std;void match(char* pData){stack<char> T;while (*pData!='\0'){switch (*pData){case '(':case '[':case '{':T.push(*pData);pData++;break;case ')':case ']':case '}':if (T.empty()){cout<<"缺少左括号,不匹配"<<endl;return ;}T.pop();pData++;break;default:pData++;break;}}if (T.empty()){cout<<"匹配"<<endl;}else{cout<<"不匹配"<<endl;}}int _tmain(int argc, _TCHAR* argv[]){char* pData="{4*(8-3)-[(7-1)()*5-9]}*3-9*(5-3)";match(pData);system("pause");return 0;}


读书人网 >编程

热点推荐