首页 试题详情
单选题

可利用一个栈来检查表达式中的括号是否匹配,其方法是:初始时设置栈为空,然后从左到右扫描表达式,遇到左括号“(”就将其入栈,遇到右括号“)”就执行出栈操作,忽略其他符号。在检查表达式“a*(b+c))-d”时,由于( ),因此可判断出该表达式中的括号不匹配。

A需要进行出栈操作但栈已空

B需要进行入栈操作但栈已满

C表达式处理已结束,但栈中仍留有字符“(”

D表达式处理已结束,但栈中仍留有字符")”

正确答案

答案解析

第二个右括号要执行出栈操作,但没有对应的左括号可执行出栈。

相似试题

  • 单选题

    利用一个检查表达式中的括号是否匹配,其方法是:初始时设置为空,然后从左到右扫描表达式,遇到左括号“(”就将其入,遇到右括号“)”就执行出操作,忽略其他符号。在检查表达式“a*(b+c))-d”时,由于( ),因此判断出该表达式中的括号匹配

    答案解析

  • 单选题

    利用一个检查表达式中的括号是否匹配,其方法是:初始时设置为空, 然后从左到右扫描表达式,遇到左括号“(”就将其入,遇到右括号“)”就执行出操作,忽略其他符号。对于算术表达式“a*(b+c))d”,由于( ),因此判断出该表达式中的括号匹配

    答案解析

  • 单选题

    可以用栈来检查算术表达式中的括号是否匹配。分析算术表达式时,初始为空,从左到右扫描字符,遇到字符“(”就将其入,遇到“)”就执行出操作。对算术表达式“(a+b*(a+b))/c)+(a+b)”,检查时,( );对算术表达式“((a+b/(a+b)-c/a)/b”,检查时,(请作答此空)。这两种情况都表明所检查的算术表达式括号匹配

    答案解析

  • 单选题

    设计一个判别表达式中左右括号是否配对出现的算法,采用()数据结构最佳。

    答案解析

  • 单选题

    若允许表达式内多种括号混合嵌套,则为检查表达式括号是否正确配对的算法,通常选用的辅助结构是()。

    答案解析

热门题库