网络教学 Programming Language Design and Implementation 程序设计语言 E
程 序 设 计 语 言 Programming Language Design and Implementation 网络教学
程序设计语言模拟试题(一) 填空(30) 1)语言的标准化有专有化标准和共识性标准两 个种类。 2)基于解释型语言的源程序,不产生目标机器代 码,只是产生更易于执行的中间代码,然后由 软件解释执行
程序设计语言模拟试题(一) 一、填空(30) 1)语言的标准化有 和 两 个种类。 2)基于解释型语言的源程序,不产生目标机器代 码,只是产生更易于执行的 ,然后由 软件解释执行。 中间代码 专有化标准 共识性标准
3)一个数据对象的可能的值由数据类型决定。 4)未初始化的变量是已经创建单位赋值的数据对 象,从数据对象拥有的左右值的角度看,它只 有左值 但无右 )一般,标量数据对象随计算机的硬件结不同 而变化。 6)类型检查涉及到实际参数的数据类型与可允许 的参数数据类型相比较,判断两个类型相同的方法 有名字相同 和结构相同
3)一个数据对象的可能的值由 数据类型 决定。 4)未初始化的变量是已经创建单位赋值的数据对 象,从数据对象拥有的左右值的角度看,它只 有 左值 ,但无 。 5)一般,标量数据对象随计算机的 不同 而变化。 硬件结构 6)类型检查涉及到实际参数的数据类型与可允许 的参数数据类型相比较,判断两个类型相同的方法 有 名字相同 和 。 右值 结构相同
7)在计算机软件开发领域,抽象原则的运用非常 广泛,概括起来,可分为过程抽象和数据抽象两 类 8)在面向对象的系统中,对象之间的联系是通过 消息传递来实现的。 9)通常,对象之间传递的消息应该含有下述信息 对象名、方法名、实际参数和回答信。。 10)从来源角度考虑,继承可以分为单重继承和 多重继承两种
7)在计算机软件开发领域,抽象原则的运用非常 广泛,概括起来,可分为 和 两 类。 过程抽象 8)在面向对象的系统中,对象之间的联系是通过 消息传递 来实现的。 9)通常,对象之间传递的消息应该含有下述信息 对象名 、 、 和 。 10)从来源角度考虑,继承可以分为 和 两种。 单重继承 数据抽象 方法名 实际参数 回答信息 多重继承
l1)顺序控制和数据控制是程序执行顺序控制 需要考虑的两个方面。 12)顺序控制可以分为优先级控制、条件控制 基于规则的控制和调用控制四种。 13)不能被再分解成更小真程序的真程序叫做 基本程序 14)当一个可见数据对象在单一引用环境中有多个 名字时,则这些名字称之为该数据对象的别名
11) 和 是程序执行顺序控制 需要考虑的两个方面。 顺序控制 12)顺序控制可以分为 、 、 和 四种。 优先级控制 13)不能被再分解成更小真程序的真程序叫做 基本程序 。 14)当一个可见数据对象在单一引用环境中有多个 名字时,则这些名字称之为该数据对象的 别名 。 数据控制 条件控制 基于规则的控制 调用控制
15)直接从自由空间表列进行分配空间的存储管理 有两种实现技术:首次满足技术和_最佳满足技术。 16)异常有两个来源:虛拟计算机检测到的和 由程序设计语言语义产生的
15)直接从自由空间表列进行分配空间的存储管理 有两种实现技术: 首次满足技术 和 。 16)异常有两个来源: 和 。 虚拟计算机检测到的 最佳满足技术 由程序设计语言语义产生的
二、简述(30) 1)请阐述类和对象之间的关系。 参考善案 2)请说明后缓语义表示法的计算规则。 参考答果D 3)请阐述采用无用单元解决悬挂引用问题的基本 思想。 参考善案四
二、简述(30) 1)请阐述类和对象之间的关系。 参考答案 2)请说明后缀语义表示法的计算规则。 参考答案 3)请阐述采用无用单元解决悬挂引用问题的基本 思想。 参考答案
4)试阐述任务存储管理中三种实现方法(单栈、 多栈和单堆)的基本原理,各适合应用的场合以及 各有的特点? 参考□ 5)以你所熟悉的一种语言为例,说明有哪些方法 可以增加程序的可读性。 参考善案
4) 试阐述任务存储管理中三种实现方法(单栈、 多栈和单堆)的基本原理,各适合应用的场合以及 各有的特点? 参考答案 5)以你所熟悉的一种语言为例,说明有哪些方法 可以增加程序的可读性。 参考答案
、简单赋值语句的基本BNF文法如下:(10) :== 算术表达式>:=+|∷:=×/因子 :=() :=下标] :=, 请将该简单赋值语句的利用扩充的BNF文法定义。 参考答案
三、 简单赋值语句的基本BNF文法如下: (10) ::= = ::= | + | - ::= | | ::= | | () ::= | [下标] ::= | , 请将该简单赋值语句的利用扩充的BNF文法定义。 参考答案
四、结果分析(10) 1)请写出下列程序的输出结果 tx=1,y=1; void P(int x) {x++;y+=x; printf(“x=%d,y=%dⅦ”,x’y);} main( {P(y); printf((“x=%d,y=%dⅦn”,x,y); 2)假设按值结果方式进行参数传递,则输出结果是什么? 参考答案
四、 结果分析(10) 1)请写出下列程序的输出结果 int x=1, y=1; void P(int x) { x++; y+ =x; printf(“x=%d, y=%d\n”,x,y); } main() { P(y); printf(“x=%d, y=%d\n”,x,y);} 2)假设按值-结果方式进行参数传递,则输出结果是什么? 参考答案