如果算符函数调用格式的表达式:x.operator-(operator++(y,0)中的“-”是作为成员函数重载的,“++”是作为友元函数重载的,那么该表达式还可以表示为:()
A.x-y++
B.x-(y)
C.(x++)-y
D.++x-y
阅读下列算法说明和流程图,将应填入(n)处的字句写在对应栏内。
【算法说明】
本算法按照算符优先关系,实现对算术四则混合运算表达式(可含小括号)的求值。处理对象是以字符串形式给出的、语法正确且不含变量的整数表达式。
算符优先关系见表5.1(§1,§2为按顺序出现的两个运算符)
说明:“”是假设的表达式开始符和结束符,不可用。
为实现算法,使用了两个堆栈分别寄存运算符和运算数(中间结果值)。算法基本思路如下:首先置操作数栈S1为空,表达式起始符“”设为运算符栈S2的栈底元素;依次读入表达式的各符号,若是数字字符则连接在一起转换为int型操作数进S1栈;若是运算符§2,则和S2栈的栈顶运算符51比较优先级后作相应操作,直至整个表达式求值结束。算法流程图5.1如下:
【问题】请将流程图补充完整。
A.x-y++
B.x-(y)
C. (x++)-y
D.++x-y
算符优先文法不是指(29)的文法。
A.没有形如U→...VW...的产生式(U,V,W为VN)
B.终结符号集VT中任意两个符号对之间至多有一种优先关系成立
C.没有相同的规则右部
D.没有形如U→ε的产生式
●编译程序中语法分析器接受以 (29) 为单位的输入,并产生有关信息供以后各阶段使用。 (30) 、LR分析法和 (31) 是几种常见的语法分析技术,其中 (30) 和LR分析法属于自下而上分析法,而 (31) 属于自上而下分析法。LR分析法有SLR(1)、LR(0)、LR(1)和LALR(1) 4种,其中 (32) 的分析能力最强, (33) 的分析能力最弱。
(29) A.表达式
B.单词
C.产生式
D.语句
(30) ,(31) A.递归下降法
B.算符优先法
C.语法制导翻译法
D.数据流分类法
(32) ,(33) A.SLR(1)
B.LR(0)
C.LR(1)
D.LALR(1)
假设某程序语言的文法如下:
S→SaT|T
T→TbR|R
R→PdR|P
P→fSg|e
其中Vr={a,b,d,e,f,g};Vn={S,T,R,P};S是开始符号,那么,此文法是(43)文法。这种文法的语法分析通常采用优先矩阵。优先矩阵给出了该文法中各个终结符之间的优先关系(大于、小于、等于和无关系)。在上述文法中,某些终结符之间的优先关系如下:b{(44)}a;f{(45)}g;a{(46)}a;d{(47)}d。
A.五则文法
B.算符文法
C.二义文法
D.属性文法
A.保税料件和保税料件之间以及保税料件和进口非保税料件之间的串换,必须符合同品种、同规格、同数量的条件
B.保税料件和国产料件(不含深加工结转料件)之间的串换,必须符合同品种、同规格、同数量、关税税率为零的条件
C.保税料件和保税料件之间以及保税料件和进口非保税料件之间的串换,必须符合同品种、同规格、同数量的条件,且商品不涉及进出口许可证件管理的条件
D.保税料件和国产料件(不含深加工结转料件)之间的串换,必须符合同品种、同规格、同数量、关税税率为零,且商品不涉及进出口许可证件管理的条件