分隔符匹配.cpp
来自「该压缩文件夹内有诸多常用算法和数据结构的c++模板编程实现」· C++ 代码 · 共 53 行
CPP
53 行
#include<iostream.h>
#include<fstream.h>
#include"listStack.h"
bool chMatch()
{
lStack<char> a;
char ch[50],ch2;
cin>>ch;
for(int i=0;ch[i]!=NULL;i++)
{
if(ch[i]=='('||ch[i]=='['||ch[i]=='{')
a.push(ch[i]);
else if(ch[i]=='/')
{
if(ch[i+1]=='*')
{
for(int j=i+2;j<50;j++)
if(ch[j]=='*'&&ch[j+1]=='/')
return true;
return false;
}
else
continue;
}
else if(ch[i]==')'||ch[i]==']'||ch[i]=='}')
{
ch2=a.pop();
if((ch[i]==')'&&ch2=='(')||
(ch[i]==']'&&ch2=='[')||
(ch[i]=='}'&&ch2=='{'))
{
continue;
}
else
return false;
}
}
if(a.isEmpty())
return true;
else return false;
}
void main()
{
if(chMatch()==1)
cout<<"匹配成功!"<<endl;
else
cout<<"匹配失败!"<<endl;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?