0
我有这个算法检查是否平衡的括号字符串的问题。我必须从一个文本文件的输入,并显示在另一个文本文件的输出。我有与此algorithm.Please麻烦帮我找出问题括号平衡与否!在C + +
#include <iostream>
#include <string.h>
#include <fstream>
#include "stack.h"
#include "stack.cpp"
using namespace std;
int main() {
StackType<char> c;
ifstream inFile("parentheses.txt");
ofstream outFile("report.txt");
int i, N;
char str[500];
inFile >> N;
inFile >> str;
while (str[i]) {
for (int i = 0; str[i] != '\0'; i++) {
if ((str[i] == '(') || (str[i] == '{') || (str[i] == '[')) {
c.Push(str[i]);
} else if ((str[i] == ')') || str[i] == '}' || str[i] == ']') {
if (c.isEmpty() == 1)
outFile << "Parentheses are not Balanced" << endl;
else if ((str[i] == ')' && str[i] == '(') ||
(str[i] == '}' && str[i] == '{') ||
(str[i] == ']' && str[i] == '[')) {
c.Pop();
} else
outFile << "Parentheses are not Balanced" << endl;
}
}
i++;
}
if (c.isEmpty() == 1)
outFile << "Parentheses are Balanced" << endl;
else
outFile << "Parentheses are not Balanced" << endl;
}
请修复您的代码布局。并发布一个示例来说明什么是错误的。 – hivert
你卡在哪个部分?意外的结果?你有没有尝试使用步进器进行调试? – Steve
你的约束是什么?你的括号什么时候平衡? – user1767754