括号匹配问题

来源:学生作业帮助网 编辑:作业帮 时间:2024/04/27 17:46:18

括号匹配问题
括号匹配问题

括号匹配问题
简单测试了一下,如果有问题,发消息给我.
#include
#include
using namespace std;
int main(int argc,char* argv[])
{
char line[101];
stack brackets;
while (cin.getline(line,101)) {
char* p = line;
while (*p) {
if (*p == '(') {
brackets.push(p - line);
brackets.push(*p);
} else if (*p == ')') {
if (brackets.empty()) {
*p = ';
} else {
*p = ' ';
brackets.pop();
line[brackets.top()] = ' ';
brackets.pop();
}
} else {
*p = ' ';
}
p++;
}
while (!brackets.empty()) {
brackets.pop();
line[brackets.top()] = '$';
brackets.pop();
}
cout