C++判断括号是否匹配规定次数

C++判断括号是否匹配 只判断()
输入判断次数 输入之后一起输出
具体样例在图片里

img


开始写的时候没顾次数 之后就改乱了
想求完整代码实现dbq

这个一般用栈实现,是左括号就进栈,右括号就出栈。最后如果栈不为空就不匹配,或者遇到右括号时栈为空也不匹配

#include <iostream>
using namespace std;
#include <string>
int main()
{
    int count = 0;
    int n,i,j;
    cin>>n;
    string s;
    for(i=0;i<n;i++)
    {
        count = 0;
        cin>>s;
        for(j=0;j<s.length();j++)
         {
                if(s[j] == '(')
                     count++;
                else if(s[j]==')')
                {
                    if(count > 0)
                        count--;
                    else if(count == 0)
                        break;        
                }
        }
        if(j==s.length())
            cout<<"TRUE ";
        else
            cout<<"FALSE ";
    }
    return 0;
}

遍历字符串长度的一半,判断第一个和最后一个是否匹配,然后继续判断第二个和倒数第二个。。。

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632