可利用一个栈来检查表达式中的括号是否匹配,其方法是:初始时设置栈为空, 然后从左到右扫描表达式,遇到左括号“(”就将其入
来源:www.zcjsj8.com 发布时间2020-01-08
可利用一个栈来检查表达式中的括号是否匹配,其方法是:初始时设置栈为空, 然后从左到右扫描表达式,遇到左括号“(”就将其入栈,遇到右括号“)”就执行出栈操作,忽略其他符号。对于算术表达式“a*(b+c))d”,由于(22),因此可判断出该表达式中的括号不匹配。
(22)A.需要进行出栈操作但栈已空
B.需要进行入栈操作但栈已满
C.表达式处理已结束,但栈中仍留有字符“(”
D.表达式处理已结束,但栈中仍留有字符“)”
【答案】A
【解析】
左括号入站,右括号出栈,,该题中括号为:()),所以当执行第2个右括号时,第一个左括号已经出栈了,栈为空栈
上一篇:设数组a[1…10,1…8]中的元素按行存放,每个元素占用4个存储单元,已知第一个数组元素a[1,1]的地址为1004,
下一篇:若有字符串“software”,则其长度为3的子串有(23)个。 (23)A.5 B.6 C.7 D.8 【答案】B