关于C语言标识符作用域的说法 正确的是,编译原理 第六章 语义分析和符号表 作业...

您所在的位置:网站首页 c语言程序的编译单位是什么 关于C语言标识符作用域的说法 正确的是,编译原理 第六章 语义分析和符号表 作业...

关于C语言标识符作用域的说法 正确的是,编译原理 第六章 语义分析和符号表 作业...

2024-07-16 12:25:57| 来源: 网络整理| 查看: 265

一.单选题(共20题,70.0分)

1

下列哪项工作属于语义分析的范畴?

A、

单词拼写错误检查

B、

括号不匹配

C、

加法运算两个操作数的类型不兼容

D、

寄存器分配

正确答案: C 我的答案:C

得分: 3.5分

2

程序设计语言的语义分为静态语义和动态语义,其中编译时能检查的语义是_______.

A、

静态语义

B、

动态语义

正确答案: A 我的答案:A

得分: 3.5分

3

语义分析所依据的是_______.

A、

源语言的语法规则

B、

源语言的语义规则

C、

等价变换规则

D、

目标语言的语义规则

正确答案: B 我的答案:B

得分: 3.5分

4

下列错误属于静态语义错误的是_______

A、

括号不匹配

B、

出现非法字符

C、

类型不相容

D、

无效指针

正确答案: C 我的答案:C

得分: 3.5分

5

编译程序不能检查处理的错误是_______.

A、

静态语义错误

B、

动态语义错误

C、

语法错误

D、

词法错误

正确答案: B 我的答案:D

得分: 0.0分

6

编译过程中符号表的作用是记录_______中各个符号的必要信息,以辅助语义的正确性检查和代码生成.

A、

源程序

B、

目标程序

C、

汇编程序

D、

可执行程序

正确答案: A 我的答案:A

得分: 3.5分

7

符号表常用的操作不包括_______.

A、

查询给定的名字是否已在表中

B、

检查名字是否符合标识符命名的文法

C、

对给定名字,往表中填写或更新它的某些信息

D、

删除一个或一组无用的项

正确答案: B 我的答案:B

得分: 3.5分

8

属于标识符“种类”属性信息的描述是_______.

A、

整型

B、

函数

C、

地址

D、

指针

正确答案: B 我的答案:A

得分: 0.0分

9

编译一个源程序时,符号表可以是一张统一的表,也可以按名字的不同种类分为几张不同的表。以上说法_______.

A、

正确

B、

不正确

正确答案: A 我的答案:A

得分: 3.5分

答案解析:

10

在目标代码生成阶段,符号表用于_______.

A、

语义检查

B、

地址分配

C、

目标代码生成

D、

优化

正确答案: B 我的答案:B

得分: 3.5分

11

关于全局变量与局部变量的说法,正确的是_______.

A、

全局变量的作用域是从声明该变量的位置开始,一直到程序结束

B、

局部变量的作用域是声明该局部变量的函数或复合语句

C、

当发生作用域嵌套时,标识符的使用遵循“最近嵌套”原则

正确答案: C 我的答案:C

得分: 3.5分

12

函数标识符内部表示中有一项是函数的目标代码的入口地址,该项信息是在_______时填写的.

A、

语法分析

B、

语义分析

C、

中间代码生成

D、

目标代码生成

正确答案: D 我的答案:D

得分: 3.5分

13

约定整型占1个单元,实型占2个单元。根据下面的声明,每个类型为date的变量占______个单元。

union category {

int grade;

float score;

}

struct date {

int year, month, day;

union category property;

}

A、

2

B、

4

C、

5

D、

6

正确答案: C 我的答案:C

得分: 3.5分

14

约定整型占1个单元,实型占2个单元。根据下面的声明,变量score占______个单元。

float score[100];

A、

2

B、

100

C、

200

正确答案: C 我的答案:C

得分: 3.5分

15

约定整型占1个单元,实型占2个单元。根据下面的声明,变量score占______个单元。

float score[10][10];

A、

2

B、

100

C、

200

D、

2000

正确答案: C 我的答案:C

得分: 3.5分

答案解析:

16

约定整型占1个单元。根据下面的声明,变量papercolor占______个单元。

enum color {red, yellow, blue, green,white };

color papercolor;

A、

1

B、

2

C、

5

D、

0

正确答案: A 我的答案:A

得分: 3.5分

17

约定每个局部化单位的起始偏移为0,操作系统为每个整型、字符型变量分配1个字节的内存空间。在下面的程序中,第1行代码中变量i的层数和偏移量是_______.

int i , j ;

int main()

{ char i ;

i=’A’;

{ int i ;

i = 0; }

i = ‘B’;

}

A、

0,0

B、

0,1

C、

1,0

D、

1,1

正确答案: A 我的答案:A

得分: 3.5分

答案解析:

18

约定每个局部化单位的起始偏移为0,整型、字符型占1个单元。在下面的程序中,第3行代码中变量i的层数和偏移量是_______.

int i , j ;

int main()

{ char i ;

i=’A’;

{ int i ;

i = 0; }

i = ‘B’;

}

A、

0,0

B、

0,1

C、

1,0

D、

1,1

正确答案: C 我的答案:C

得分: 3.5分

答案解析:

19

约定每个局部化单位的起始偏移为0,整型、字符型占1个单元,实型占2个单元。在下面的程序中,第5行代码中变量i的层数和偏移量是_______.

int i , j ;

int main()

{ char i ;

i=’A’;

{ float i ;

i = 0; }

i = ‘B’;

}

A、

1,0

B、

1,1

C、

2,0

D、

2,1

正确答案: B 我的答案:C

得分: 0.0分

答案解析:

20

约定每个局部化单位的起始偏移为0,整型、字符型占1个单元,实型占2个单元,不考虑优化。在下面程序中,第7行代码中变量i的层数和偏移量是_______.

int i , j ;

int main()

{ char i ;

i=’A’;

{ float i ;

i = 0; }

{ int i;

i = 10; }

i = ‘B’;

10.}

A、

1,1

B、

1,3

C、

2,0

D、

2,1

正确答案: B 我的答案:C

得分: 0.0分

答案解析:

二.多选题(共8题,30.0分)

1

下面C语言程序中,可能存在的语义(包括动态语义)错误有_______.

int x = 0,z;

float y(){…};

int main(){

z = x() + t;

z /= x;

x = y();

}

A、

标识符使用时的种类和声明时的种类不一致

B、

标识符未声明

C、

除零溢出

D、

赋值语句左右部的类型不相容

正确答案: ABCD 我的答案:ABD

得分: 1.8分

答案解析:

2

构建符号表时,为提高符号表的查找效率,可将符号表组织成________.

A、

二叉树形式

B、

散列表

C、

顺序表

D、

多表结构

正确答案: ABD 我的答案:ABC

得分: 0.0分

3

符号表中的标识符,一般设置的属性有______.

A、

名字

B、

类型

C、

存储分配信息

D、

作用域及可见性

正确答案: ABCD 我的答案:AB

得分: 1.8分

4

函数标识符的属性表示中一般应包含_______.

A、

函数名

B、

函数参数信息

C、

函数体对应目标代码入口地址

D、

函数返回值类型

正确答案: ABCD 我的答案:ACD

得分: 1.8分

答案解析:

5

构造类型如数组,结构体等的内部表示中一般应包含_______.

A、

构造类型的名字

B、

构造类型的种类

C、

构造类型所占内存空间的大小

D、

构造类型相关的详细信息,如数组的上下界,成分类型,结构体的各个域的信息等

正确答案: BCD 我的答案:ABCD

得分: 0.0分

答案解析:

6

关于标识符的作用域,以下说法正确的是______.

A、

用户定义的每一个标识符都有作用域

B、

标识符的作用域是编译时确定的

C、

标识符的作用域是目标代码运行时确定的

D、

标识符在其作用域内使用它是合法的;反之在作用域外使用它是非法的。

正确答案: ABD 我的答案:ABD

得分: 3.5分

7

关于C语言标识符作用域的说法,正确的是______.

A、

在C语言中,每个源程序编译单位、每个函数定义、复合语句都各自构成一个作用域区域

B、

标识符必须先声明再使用,同一作用域内标识符不得重复声明

C、

在嵌套结构中,内层标识符可以与外层标识符同名

D、

在嵌套结构中,外层标识符的作用域要去掉内层同名标识符的作用域区域

正确答案: ABCD 我的答案:ABCD

得分: 3.5分

答案解析:

8

全局符号表可以采用______解决符号表的局部化问题.

A、

删除法

B、

驻留法

C、

散列法

D、

局部符号表

正确答案: ABC 我的答案:ABC



【本文地址】

公司简介

联系我们

今日新闻


点击排行

实验室常用的仪器、试剂和
说到实验室常用到的东西,主要就分为仪器、试剂和耗
不用再找了,全球10大实验
01、赛默飞世尔科技(热电)Thermo Fisher Scientif
三代水柜的量产巅峰T-72坦
作者:寞寒最近,西边闹腾挺大,本来小寞以为忙完这
通风柜跟实验室通风系统有
说到通风柜跟实验室通风,不少人都纠结二者到底是不
集消毒杀菌、烘干收纳为一
厨房是家里细菌较多的地方,潮湿的环境、没有完全密
实验室设备之全钢实验台如
全钢实验台是实验室家具中较为重要的家具之一,很多

推荐新闻


图片新闻

实验室药品柜的特性有哪些
实验室药品柜是实验室家具的重要组成部分之一,主要
小学科学实验中有哪些教学
计算机 计算器 一般 打孔器 打气筒 仪器车 显微镜
实验室各种仪器原理动图讲
1.紫外分光光谱UV分析原理:吸收紫外光能量,引起分
高中化学常见仪器及实验装
1、可加热仪器:2、计量仪器:(1)仪器A的名称:量
微生物操作主要设备和器具
今天盘点一下微生物操作主要设备和器具,别嫌我啰嗦
浅谈通风柜使用基本常识
 众所周知,通风柜功能中最主要的就是排气功能。在

专题文章

    CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭