在递归的预测分析过程中进行翻译,以下说法不正确的是()。
A.在语法分析器中,每个非终结符A对应一个过程,在做语义分析时,要将过程扩展成一个函数
B.对出现在A产生式右部中的每个文法符号的每个属性都设置一个局部变量
C.如果非终结符含有继承属性,需要将函数调用的返回值赋给相应的局部变量
D.对于产生式右部的每个动作,将其代码复制到语法分析器,并把对属性的引用改为对相应变量的引用
A.在语法分析器中,每个非终结符A对应一个过程,在做语义分析时,要将过程扩展成一个函数
B.对出现在A产生式右部中的每个文法符号的每个属性都设置一个局部变量
C.如果非终结符含有继承属性,需要将函数调用的返回值赋给相应的局部变量
D.对于产生式右部的每个动作,将其代码复制到语法分析器,并把对属性的引用改为对相应变量的引用
A、可能需要执行递归过程很多次,因而时间开销大
B、每次递归调用都会生成一个新的栈帧,因而空间开销大
C、每次递归调用在栈帧中保存的返回地址都不相同
D、递归过程第一个参数的有效地址为R[ebp]+8
B.递归调用是指函数调用自己
C.所有的外部函数只能在本文件中被调用
D.在循环体中break语句和continue语句的作用都是结束循环
A. 方法递归必须有结束条件
B. 方法递归次数太多会导致内存溢出
C. 方法递归就是指在一个方法的内部调用自身的过程
D. 方法递归可以无数次,只要有结束条件就可以
A、“程序”是计算系统体现千变万化功能的一种重要手段:计算系统仅需要实现简单元素以及一个程序执行机构即可
B、其它各项说法有不正确的
C、“程序”的基本特征是复合、抽象与构造。而最重要的是,如何解决近乎无限的、具有自相似性的复杂组合的构造问题,这就需要递归和迭代
D、本质上讲,“程序”就是对简单元素的组合(或称复合);此外,“程序”需要有能力对一些常见的组合A进行命名,并利用该名字参与更为复杂的组合B的构造中,此即为“抽象”;在执行时(或称计算时),再将该组合A替换组合B中的该名字,实现计算并获取结果
A、递归函数必须有结束递归调用的基本条件
B、当满足递归结束的基本条件后将不再进行递归
C、递归函数一定包含多层嵌套的循环结构
D、递归结束的条件决定递归的深度
A、“复合”即是将一组函数g1,g2,…,gn,作为参数代入到另一函数f(x1,x2,…,xn)中,即n个函数,g1,g2,…,gn被组合到了一起,是按函数f的形式进行的组合。
B、“原始递归”即是要定义h(0),h(1),…,h(n),h(n+1),其中h(0)需要直接给出,而h(n+1)需要用h(n)进行定义,即h(n+1)是将h(n)和n复合在一起。
C、复合是构造新函数的一种手段,原始递归也是构造新函数的一种手段。递归函数是描述程序组合与构造问题的一种数学形式
D、上述说法有不正确的
B.不能改变文法的开始符号
C.消除左递归后的结果形式上可能不同,但它们是等价的
D.以上都对
为了保护您的账号安全,请在“简答题”公众号进行验证,点击“官网服务”-“账号验证”后输入验证码“”完成验证,验证成功后方可继续查看答案!