(整理完)编译原理网上作业题20121101_第1页
(整理完)编译原理网上作业题20121101_第2页
(整理完)编译原理网上作业题20121101_第3页
(整理完)编译原理网上作业题20121101_第4页
(整理完)编译原理网上作业题20121101_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

./东北农业大学网络教育学院编译原理网上作业题第一章编译概述一、多项选择题:1.编译程序各阶段的工作都涉及到〔。〔﹡﹡A.语法分析B.表格管理C.出错处理D.语义分析E.词法分析2.编译程序工作时,通常有〔阶段。

〔﹡A.词法分析B.语法分析C.中间代码生成D.语义检查E.目标代码生成二、填空题:1.解释程序和编译程序的区别在于〔。〔﹡2.编译过程通常可分为5个阶段,分别是〔、〔、〔、〔和〔生成。〔﹡3.编译程序工作过程中,第一段输入是〔,最后阶段的输出为〔程序。〔﹡4.编译程序是指将〔程序翻译成〔程序的程序。〔﹡三、综合题:1.画出编译程序的总体结构图,简述各部分的主要功能。〔﹡﹡﹡第二章文法和语言的基本知识一、多项选择题:1.下面哪些说法是错误的〔。〔﹡﹡A.有向图是一个状态转换图

B.状态转换图是一个有向图

C.有向图是一个DFA

D.DFA可以用状态转换图表示

2.对无二义性文法来说,一棵语法树往往代表了〔。〔﹡﹡A.多种推导过程

B.多种最左推导过程

C.一种最左推导过程D.仅一种推导过程

E.一种最左推导过程

3.如果文法G存在一个句子,满足下列条件〔之一时,则称该文法是二义文法。〔﹡﹡A.该句子的最左推导与最右推导相同

B.该句子有两个不同的最左推导

C.该句子有两棵不同的最右推导

D.该句子有两棵不同的语法树

E.该句子的语法树只有一个

4.有一文法G:S→ABA→aAb|εB→cBd|ε它不产生下面〔集合

〔﹡﹡A.{anbmcsup>ndm|n,m≥0}

B.{anbncsup>mdm|n,m>0}

C.{anbmcsup>mdn|n,m≥0}

D.{anbncsup>mdm|n,m≥0}

E.{anbncsup>ndm|n,n≥0}

5.自下而上的语法分析中,应从〔开始分析。

〔﹡A.句型B.句子C.以单词为单位的程序D.文法的开始符E.句柄

6.对正规文法描述的语言,以下〔有能力描述它。

〔﹡﹡A.0型文法B.1型文法C.上下文无关文法D.右线性文法E.左线性文法二、填空题:1.文法中的终结符和非终结符的交集是〔。词法分析器交给语法分析器的文法符号一定是〔,它一定只出现在产生式的〔部。〔﹡2.最左推导是指每次都对句型中的〔非终结符进行扩展。〔﹡3.在语法分析中,最常见的两种方法一定是〔分析法,另一是〔分析法。〔﹡4.采用〔语法分析时,必须消除文法的左递归。〔﹡5.〔树代表推导过程,〔树代表归约过程。〔﹡6.自下而上分析法采用〔、归约、错误处理、〔等四种操作。〔﹡﹡7.Chomsky把文法分为〔种类型,编译器构造中采用〔和〔文法,它们分别产生〔和〔语言,并分别用〔和〔自动机识别所产生的语言。〔﹡﹡三、判断题:1.文法S→aS|bR|εR→cS。描述的语言是<a|bc>*〔﹡2.在自下而上的语法分析中,语法树与分析树一定相同。〔﹡3.二义文法不是上下文无关文法。〔﹡4.语法分析时必须先消除文法中的左递归。〔﹡5.规归约和规推导是互逆的两个过程。〔﹡6.一个文法所有句型的集合形成该文法所能接受的语言。〔﹡7.有穷自动机接受的语言是正则语言。〔﹡8.若r1和r2是Σ上的正规式,则r1|r2也是。〔﹡9.令Σ={a,b},则Σ上所有以b为首的字构成的正规集的正规式为b*<a|b>*。〔﹡四、简答题句柄:〔﹡2.素短语:〔﹡﹡3.语法树:〔﹡﹡4.归约:〔﹡﹡5.推导:〔﹡﹡五、问答题1.给出上下文无关文法的定义。〔﹡﹡2.文法G[S]:S→aSPQ|abQQP→PQbP→bbbQ→bccQ→cc〔1它是Chomsky哪一型文法?〔2它生成的语言是什么?〔﹡﹡﹡3.按指定类型,给出语言的文法。L={aibj|j>i≥1}的上下文无关文法。〔﹡﹡4.有文法G:S→aAcB|BdA→AaB|cB→bScA|b〔1试求句型aAaBcbbdcc和aAcbBdcc的句柄;〔2写出句子acabcbbdcc的最左推导过程。〔﹡﹡﹡5.对于文法G[S]:S→〔L|aS|aL→L,S|S〔1画出句型〔S,〔a的语法树。〔2写出上述句型的所有短语、直接短语、句柄和素短语。〔﹡﹡﹡6.考虑文法G[S],其产生式如下:S→<L>|aL→L,S|S<a>试指出此文法的终结符号、非终结符号。<b>给出句子<a,<a,a>>的分析树。<c>构造句子<a,<a,a>>的一个最左推导。<d>构造句子<a,<a,a>>的一个最右推导。<e>这个文法生成的语言是什么?〔﹡﹡7.考虑文法G[T]:T→T*F|FF→F↑P|PP→〔T|i证明T*P↑〔T*F是该文法的一个句型,并指出直接短语和句柄。〔﹡﹡8.试描述下列文法产生的语言L〔G[S]〔﹡﹡S→10S0|aAA→bA|a9.已知语言L<G>={abnc|n≥1}试对该语言构造相应文法。〔﹡﹡10.证明下列文法的二义性〔﹡﹡﹡1.G[Z]2.G[S]Z→aZbZ|aZ|aS→ABA→bB|bC|baB→Sb|ba|aC→Bb|b11.有文法G[S]:S→iSeS|iS|i该文法是否是二义的。试证明之。〔﹡﹡12.文法G[T]:T→aR,R→Tb|d生成的语言是什么?G[T]是否为3型文法?〔﹡﹡13.试写出能够描述下列格式的文法。〔﹡﹡673917422试构造生成语言的上下文无关文法。〔﹡﹡﹡<1>{anbnci|n≥1,i≥0}<2>{w|w∈{a,b}+,且w中a的个数恰好比b多1}下面的二义性文法描述命题演算公式,为它写一个等价的非二义性文法。G[S]:S->SANDS|SORS|NOTS|p|q|<S>〔﹡﹡16.对于下列语言分别写出它们的正规表达式。〔﹡﹡<1>

英文字母组成的所有符号串,要求符号串中顺序包含五个元音。<2>

英文字母组成的所有符号串,要求符号串中的字母依照词典顺序排列。第三章词法分析与有穷自动机一、多项选择题:1.在词法分析中,能识别出〔。〔﹡﹡A.基本字

B.四元式

C.运算符

D.逆波兰式

E.常数2.令∑={a,b},则∑上所有以b开头,后跟若干个ab的字的全体对应的正规式为〔。〔﹡﹡

A.b<ab>*

B.b<ab>+

C.<ba>*b

D.<ba>+b

E.b<a|b>二、填空题:1.确定有限自动机DFA是〔的一个特例。〔﹡2.若二个正规式所表示的〔相同,则认为二者是等价的。〔﹡3.一个字集是正规的,当且仅当它可由〔所〔。〔﹡三、判断题:1.一个有限状态自动机中,有且仅有一个惟一终态。〔2.设r和s分别是正规式,则有L〔r|s=L<r>|L<s>。〔3.自动机M和M′的状态数不同,则二者必不等价。〔4.确定的自动机以及不确定的自动机都能正确地识别正规集。〔5.对任意一个右线性文法G,都存在一个NFAM,满足L<G>=L<M>。〔6.对任意一个右线性文法G,都存在一个DFAM,满足L<G>=L<M>。〔7.对任何正规表达式e,都存在一个NFAM,满足L<G>=L<e>。〔8.对任何正规表达式e,都存在一个DFAM,满足L<G>=L<e>。〔9.设M是一个NFA,并且L<M>={x,y,z},则M的状态数至少为4个。〔10.对任何一个NFAM,都存在一个DFAM',使得L<M'>=L<M>。〔四、综合题:1.设M=〔{x,y},{a,b},f,x,{y}为一非确定的有限自动机,其中f定义如下:f〔x,a={x,y}f〔a,b={y}f〔y,a=φf〔y,b={x,y}试构造相应的确定有限自动机M′。〔﹡﹡2.对给定正规式b*〔d|ad〔b|ab+,构造其NFAM。〔﹡﹡3.字母表{a,b}上的正规式R=〔ba|a*,构造R的相应DFA。〔﹡﹡4.请写出在∑=〔a,b上,不是a开头的,但以aa结尾的字符串集合的正规表达式,并构造与之等价状态最少的DFA。〔﹡﹡﹡人运狼、羊、菜过河,一次运一件,不让羊吃掉菜,也不让狼吃掉羊,画出渡河的状态转换图。可否将其抽象为一个有限自动机。〔﹡﹡﹡6.对于正规表达式<a|b>*a<a|b>构造最小状态的DFA。〔﹡﹡第四章语法分析一、多项选择题:1.一个LR分析器包括〔。〔﹡﹡A.一个总控程序B.一个项目集C.一个活前缀D.一分析表E.一个分析栈2.LR分析器核心部分是一分析表,该表包括〔等子表。〔﹡﹡A.LL<1>分析B.优先关系C.GOTOD.LRE.ACTION3.每一项ACTION[S,a]所规定的动作包括〔。〔﹡﹡A.移进B.比较C.接受

D.归约

E.报错4.对LR分析表的构造,有可能存在〔动作冲突。〔﹡﹡

A.移进B.归约

C.移进/归约

D.移进/移进

E.归约/归约5.对LR分析器来说,存在〔等分析表的构造方法。〔﹡﹡

A.LALR

B.LR〔0

C.SLR〔1

D.SLR〔0

E.LR〔16.自上而下的语法分析方法有〔。〔﹡﹡

A.算符优先分析法

B.LL〔1分析法

C.SLR〔1分析法

D.LR〔0分析法

E.LALR〔1分析法二、填空题:1.对于一个文法,如果能够构造〔。使得它的〔均是唯一确定的,则称该文法为LR文法。〔﹡2.字的前缀是指该字的〔。〔﹡3.活前缀是指〔的一个前缀,这种前缀不含〔之后的任何符号。〔﹡4.在LR分析过程中,只要〔的已扫描部分保持可归约成一个〔,则扫描过的部分正确。5.将识别〔的NFA确定化,使其成为以〔为状态的DFA,这个DFA就是建立〔的基础。〔﹡﹡6.A→α·称为〔项目;对文法开始符S′→α·为〔项目;若a为终结符,则称A→α·aβ为〔项目;若B为非终结符,则称A→α·aβ为〔项目。〔﹡﹡7.LR〔0分析法的名字中"L"表示〔,"R"表示〔,"0”表示〔。三、判断题:1.对一个右线性文法G,必存在一个左线性文法G',使得L<G>=L<G'>,反之亦然。〔﹡四、综合题:1.构造下面文法的LL〔1分析表。〔﹡﹡﹡D→TLT→int|realL→idRR→,idR|ε2.下面文法G[S]是否为LL〔1文法?说明理由。〔﹡﹡S→AB|PQxA→xyB→bcP→dP|εQ→aQ|ε3.设有以下文法:〔﹡﹡﹡G[S]:S→aAbDe|dA→BSD|eB→SAc|cD|εD→Se|ε〔1求出该文法的每一个非终结符U的FOLLOW集。〔2该文法是LL〔1文法吗?〔3构造C[S]的LL〔1分析表。4.将文法G[V]改造成为LL<1>的。〔﹡﹡﹡G[V]:V→N|N[E]E→V|V+EN→i5.已知文法:〔﹡﹡﹡G[A]:A→aAa|ε〔1该文法是LL〔1文法吗?为什么?〔2若采用LL〔1方法进行语法分析,如何得到该文法的LL〔1分析表?〔3若输入符号串"aaaa",请给出语法分析过程。6.设有文法G[S]为:〔﹡﹡﹡S→a|b|<A>A→SdA|S〔1完成下列算符优先关系表,见下表,并判断G[S]是否为算符优先文法。表算符优先关系表〔2给出句型〔SdSdS的短语、简单短语、句柄、素短语和最左素短语。〔3给出输入串〔adb#的分析过程。7.设有文法G[S]为:〔﹡﹡﹡S→a|b|<A>A→SdA|S〔1完成下列算符优先关系表,见下表,并判断G[S]是否为算符优先文法。表算符优先关系表〔2给出句型〔SdSdS的短语、简单短语、句柄、素短语和最左素短语。〔3给出输入串〔adb#的分析过程。8.对于文法G[S]:S→AS|bA→SA|a〔1列出所有LR〔0项目;〔2列出构成文法LR〔0项目集规族。〔﹡﹡﹡9.有文法G[S]S→a|∧|〔TT→T,S|S该文法是否是LL〔1文法,若不是,请进行改写。并给出它的分析表。〔﹡﹡﹡10.有文法G[S]〔1S→A〔2S→B〔3A→aAb〔4A→c〔5B→aBb〔6B→d试构造相应的LR〔0项目集规族及相应的分析表。〔﹡﹡﹡11.已知文法G[S],其产生式如下:

S→<L>|a

L→L,S|S从G[S]中消除左递归,并为之构造一个非递归预测分析器LL<1>分析表。请说明在句子<a,<a,a>>上的分析器的动作。〔﹡﹡﹡12.证明下面文法是SLR<1>文法,并构造其SLR分析表。E→E+T|TT→TF|FF→F*|a|b〔﹡﹡﹡第五章语法制导翻译技术和中间代码生成一、多项选择题: 1.中间代码主要有〔。〔﹡﹡

A.四元式B.二元式C.三元式 D.后缀式E.间接三元式2.在下面的〔语法制导翻译中,采用拉链-回填技术。〔﹡﹡

A.赋值语句B.goto语句

C.条件语句 D.循环语句3.下列〔中间代码形式有益于优化处理。〔﹡﹡

A.三元式 B.四元式 C.间接三元式 D.逆波兰表示法 E.树形表示法4.在编译程序中安排中间代码生成的目的是〔。〔﹡﹡

A.便于进行存储空间的组织 B.利于目标代码的优化

C.利于编译程序的移植D.利于目标代码的移植 E.利于提高目标代码的质量5.三地址代码语句具体实现通常有〔表示方法。〔﹡﹡

A.逆波兰表示 B.三元式 C.间接三元式 D.树形表示 E.四元式二、填空题:1.中间代码有〔、〔、〔、〔等形式,生成中间代码主要是为了使〔。2.语法制导翻译既可以用来产生〔代码,也可以用来产生〔指令,甚至可用来对输入串进行〔。〔﹡3.当源程序中的标号出现"先引用后定义"时,中间代码的转移地址须持〔时才能确定,因而要进行〔。〔﹡4.文法符号的属性有两种,一种称为〔,另一种称为〔。〔﹡﹡5.后缀式abc-/所代表的表达式是〔,表达式<a-b>*c可用后缀式〔表示。〔﹡﹡6.用一〔辅以〔的办法来表示中间代码,这种表示法称为间接三元式。〔﹡﹡三、问答题:1.给出下列表达式的逆波兰表示〔后缀式:〔﹡﹡①a*<-b+c>②<A∨B>∧<C∨┑D∧E>2.写出算术表达式:A+B*<C-D>+E/<C-D>↑N的:〔﹡﹡﹡①四元式序列;②三元式序列;③间接三元式序列3.写出下面算术表达式E值的语义描述:〔﹡﹡〔1E→E1+E2〔2E→0〔3E→14.给出下列表达式的逆波兰表式。〔﹡﹡〔1a≤b+c∧a>d∨a+b≠e〔2a=c∧b=d〔3〔a*b-c**n+b*〔a+d/e5.分别写出语句a:=b*-c+b*-c的四元式、三元式和间接三元式的表示。〔﹡﹡﹡6.文法及其翻译方案为:P:=bQb{print:"1”}Q:=cR{print:"2Q:=a{print:"3”}R:=Qad{print:"4当输入串为bccaadadb时,该翻译方案的输出是什么?〔﹡﹡7.给定文法G[E]:E:=T+E|TT:=F*T|FF:=i|<E>则求i+i+<i*i>*i的逆波兰表示。〔﹡﹡第六章符号表的组织和管理一、多项选择题:1.符号表的每一项均包含〔。〔﹡﹡A.名字栏 B.类型栏 C.信息栏D.值栏 E.a~d均包含2.对编译程序所用到的符号表,涉及的操作有〔。〔﹡﹡A.填写或更新信息栏容 B.填入新名 C.给定名字,访问它的有关信息D.杂凑技术 E.线性表和排序二叉树3.源程序中的错误一般有〔。〔﹡﹡A.词法错误 B.语法错误 C.语义错误 D.编译错误

E.违反环境限制的错误二、填空题:1.符号表中名字栏容有两种填写方式,它们是〔填写和〔填写。〔﹡﹡2.词法分析阶段的错误主要是〔,可通过〔的办法纠正错误。〔﹡﹡3.符号表中名字的有关信息在〔和〔过程中陆续填入。〔﹡4.在目标代码生成阶段,符号表是〔的依据。〔﹡三、简答题:1.在编译过程中为什么要建立符号表?〔﹡﹡2.一个过程的活动记录中一般包含那些数据。〔﹡﹡第七章运行时的存储组织与管理一、多项选择题:1.下面〔需要在运行阶段分配存储空间。〔﹡﹡

A.数组B.指针变量

C.动态数组

D.静态变量

E.动态变量2.栈式动态分配允许〔。〔﹡﹡

A.递归过程

B.分程序结构

C.动态变量

D.动态数组

E.静态数组3.动态存储分配可采用的分配方案有〔。〔﹡﹡

A.队式存储分配

B.栈式存储分配

C.链式存储分配

D.堆式存储分配

E.线性存储分配4.栈式动态分配与管理因调用而进入过程之后,要做的工作是〔。〔﹡﹡

A.定义新的活动记录的SP

B.保护返回地址

C.传递参数值

D.建立DISPLAY表

E.定义新的活动记录的TOP5.静态分配不允许程序出现〔。〔﹡﹡

A.递归过程

B.静态数组

C.可变体积的数据项目

D.待定性质的名字

E.静态变量6.活动记录包括〔。〔﹡﹡

A.局部变量

B.连接数据

C.形式单元

D.局部数组的情变量

E.临时工作单元第八章目标代码生成一、多项选择题:1.根据优化所涉及的围,可将优化分为〔。〔﹡﹡

A.局部优化

B.过程优化

C.全局优化

D.循环优化

E.四元式优化2.下列优化中,属于循环优化的有〔。〔﹡﹡

A.强度削弱

B.合并已知量

C.删除无用赋值

D.删除归纳变量

E.代码外提3.如果a→b是程序流图中的一条边,则由这条回边构成的循环由〔结点组成。〔﹡﹡

A.a

B.b

C.有通路到达b的结点

D.有通路到达a且该通路上不经过b的结点

E.有通路到达b且该通路上不经过a的结点

4.采用无环有向图〔DAG,可以实现的优化有〔。〔﹡﹡

A.合并已知量

B.删除公共子表达式

C.强度削弱

D.删除无用赋值

E.删除归纳变量5.编译程序的输出结果可以是〔。〔﹡﹡

A.目标代码

B.汇编语言代码

C.中间代码

D.优化后的中间代码

E.可重定位代码二、填空题:1.局部优化是〔围进行的一种优化。〔﹡2.在一个基本块,可实行3种优化方法,即合并已知量、〔、〔。〔﹡﹡3.优化就是对程序进行各种〔变换,使之能生成更有效的〔。〔﹡4.在优化中,可把循环中的〔提到循环外面去,这种方法称为〔。〔﹡﹡东北农业大学网络教育学院编译原理作业题参考答案第一章编译概述多项选择题:1.编译程序各阶段的工作都涉及到〔BC。〔﹡﹡A.语法分析B.表格管理C.出错处理D.语义分析E.词法分析2.编译程序工作时,通常有〔ABCE阶段。

〔﹡A.词法分析B.语法分析C.中间代码生成D.语义检查E.目标代码生成填空题:1.解释程序和编译程序的区别在于〔是否生成目标程序。〔﹡2.编译过程通常可分为5个阶段,分别是〔词法分析、〔语法分析、〔中间代码生成、〔代码优化和〔目标代码生成。〔﹡3.编译程序工作过程中,第一段输入是〔源程序,最后阶段的输出为〔目标代码生成程序。〔﹡4.编译程序是指将〔高级语言编写的程序翻译成〔目标语言程序的程序。〔﹡综合题:1.画出编译程序的总体结构图,简述各部分的主要功能。〔﹡﹡﹡解答:编译程序的总体结构如下图所示:词法分析程序:输入源程序,进行词法分析,输出单词符号。语法分析程序:在词法分析的基础上,根据语言的语法规则〔方法规则把单词符号串分解成各类语法单位,并判断输入串是否构成语法上正确的"程序"。中间代码生成程序:按照语义规则把语法分析程序归约〔或推导出的语法单位翻译成一定形式的中间代码,比如说四元式。优化程序:对中间代码进行优化处理。目标代码生成程序:把中间代码翻译成目标语言程序。表格管理模块保存一系列的表格,登记源程序的各类信息和编译各阶段的进展情况。编译程序各阶段所产生的中间结果都记录在表格中,所需信息多数都需从表格中获取,整个编译过程中都在不断地和表格打交道。出错处理程序对出现在源程序中的错误进行处理。此外,编译的各个阶段都可能出现错误。出错处理程序对发现的错误都及时进行处理。第二章文法和语言的基本知识多项选择题:1.ABC2.ACE3.BCD4.AC5.BC填空题:1.文法中的终结符和非终结符的交集是〔空集。词法分析器交给语法分析器的文法符号一定是〔终结符,它一定只出现在产生式的〔右部。〔﹡2.最左推导是指每次都对句型中的〔最左非终结符进行扩展。〔﹡3.在语法分析中,最常见的两种方法一定是〔自上而上分析法,另一是〔自下而上分析法。〔﹡4.采用〔自上而下语法分析时,必须消除文法的左递归。〔﹡5.〔语法树代表推导过程,〔分析树代表归约过程。〔﹡6.自下而上分析法采用〔移进、归约、错误处理、〔接受等四种操作。〔﹡﹡7.Chomsky把文法分为〔4种类型,编译器构造中采用〔2型和〔3型文法,它们分别产生〔上下文无关语言和〔正规语言语言,并分别用〔下推自动机和〔有限自动机识别所产生的语言。〔﹡﹡判断题:1.正确2.错误3.错误4.错误5.错误6.错误7.正确8.正确9.错误简答题1句柄:〔﹡解答:一个句型的最左直接短语称为该句型的句柄。2.素短语:〔﹡﹡解答:至少含有一个终结符的素短语,并且除它自身之外不再含任何更小的素短语。3.语法树:〔﹡﹡解答:满足下面4个条件的树称之为文法G[S]的一棵语法树。①每一终结均有一标记,此标记为VN∪VT中的一个符号;②树的根结点以文法G[S]的开始符S标记;③若一结点至少有一个直接后继,则此结点上的标记为VN中的一个符号;④若一个以A为标记的结点有K个直接后继,且按从左至右的顺序,这些结点的标记分别为X1,X2,…,Xk,则A→X1,X2,…,Xk,必然是G的一个产生式。4.归约:〔﹡﹡解答:我们称αγβ直接归约出αAβ,仅当A→γ是一个产生式,且α、β∈<VN∪VT>*。归约过程就是从输入串开始,反复用产生式右部的符号替换成产生式左部符号,直至文法开始符。5.推导:〔﹡﹡解答:我们称αAβ直接推出αγβ,即αAβTαγβ,仅当A→γ是一个产生式,且α、β∈<VN∪VT>*。如果α1α2…αn,则我们称这个序列是从α1至α2的一个推导。若存在一个从α1αn的推导,则称α1可推导出αn。推导是归约的逆过程。问答题1.给出上下文无关文法的定义。〔﹡﹡解答:一个上下文无关文法G是一个四元式〔VT,VN,S,P,其中:●VT是一个非空有限集,它的每个元素称为终结符号;●VN是一个非空有限集,它的每个元素称为非终结符号,VT∩VN=Φ;●S是一个非终结符号,称为开始符号;●P是一个产生式集合〔有限,每个产生式的形式是P→α,其中,P∈VN,α∈<VT∪VN>*。开始符号S至少必须在某个产生式的左部出现一次。2.文法G[S]:S→aSPQ|abQQP→PQbP→bbbQ→bccQ→cc〔1它是Chomsky哪一型文法?〔2它生成的语言是什么?〔﹡﹡﹡解答:〔1由于产生式左部存在终结符号,且所有产生式左部符号的长度均小于等于产生式右部的符号长度,所以文法G[S]是Chomsky1型文法,即上下文有关文法。〔2按产生式出现的顺序规定优先级由高到低〔否则无法推出句子,我们可以得到:SabQabcSaSPQaabQPQaabPQQaabbQQaabbcQaabbccSaSPQaaSPQPQaaabQPQPQaaabPQQPQaaabPQPQQaaaPPQQQaaabbPqqqaaabbQQQaaabbbcQQaaabbbccQaaabbbccc……于是得到文法G[S]生成的语言L={anbncn|n≥1}3.按指定类型,给出语言的文法。L={aibj|j>i≥1}的上下文无关文法。〔﹡﹡解答:由L={aibj|j>i≥1}知,所求该语言对应的上下文无关文法首先应有S→aSb型产生式,以保证b的个数不少于a的个数;其次,还需有S→Sb或S→bS型的产生式,用以保证b的个数多于a的个数;也即所求上下文无关文法G[S]为:G[S]:S→aSb|Sb|b4.有文法G:S→aAcB|BdA→AaB|cB→bScA|b〔1试求句型aAaBcbbdcc和aAcbBdcc的句柄;〔2写出句子acabcbbdcc的最左推导过程。〔﹡﹡﹡解答:〔1分别画出对应两句型的语法树,如下图所示句柄:AaBBd图语法树〔2句子acabcbbdcc的最左推导如下:STaAcBaAaBcBacaBcBacabcBacabcbScAacabcbBdcAacabcbbdcAacabcbbdcc5.对于文法G[S]:S→〔L|aS|aL→L,S|S〔1画出句型〔S,〔a的语法树。〔2写出上述句型的所有短语、直接短语、句柄和素短语。〔﹡﹡﹡解答:〔1句型〔S,〔a的语法树如下图所示。图句型〔S,〔a的语法树〔2由上图可知:①短语:S、a、<a>、S,<a>、<S,<a>>;②直接短语:a、S;③句柄:S;④素短语:素短语可由图2-8-3中相邻终结符之间的优先关系求得,即;因此素短语为a。6.考虑文法G[S],其产生式如下:S→<L>|aL→L,S|S<a>试指出此文法的终结符号、非终结符号。<b>给出句子<a,<a,a>>的分析树。<c>构造句子<a,<a,a>>的一个最左推导。<d>构造句子<a,<a,a>>的一个最右推导。<e>这个文法生成的语言是什么?〔﹡﹡解答:<a>终结符号为:{<,>,a,,,}

非终结符号为:{S,L}

开始符号为:S<b>分析树〔c

S<L><L,S><S,S><a,S><a,<L><a,<L,S>>

<a,<S,S>><a,<a,S>><a,<a,a>><d>S<L><L,S><L,<L>><L,<L,S>><L,<L,a>>

<L,<S,a>><L,<a,a>><S,<a,a>><a,<a,a>><e>L<G[S]>=<α1,α2,...,αn>或a

其中αi<1≤i≤n>是L<G[S]>。即L<G[S]>产生一个以a为原子的纯表,但不包括空表。7.考虑文法G[T]:T→T*F|FF→F↑P|PP→〔T|i证明T*P↑〔T*F是该文法的一个句型,并指出直接短语和句柄。〔﹡﹡解答:首先构造T*P↑〔T*F的语法树如下图所示。图句型T*P↑〔T*F的语法树由上图可知,T*P↑〔T*F是文法G[T]的一个句型。直接短语有两个,即P和T*F;句柄为P。8.试描述下列文法产生的语言L〔G[S]〔﹡﹡S→10S0|aAA→bA|a解答:L<G>={<10>iabna0in≥0i≥0}9.已知语言L<G>={abnc|n≥1}试对该语言构造相应文法。〔﹡﹡解答:G[Z]:Z→aBCB→Bb|b10.证明下列文法的二义性〔﹡﹡﹡1.G[Z]2.G[S]Z→aZbZ|aZ|aS→ABA→bB|bC|baB→Sb|ba|aC→Bb|b解答:〔1对于句子aaaba,画出二棵不同的语法树,因而是二义的。〔2G[S]对于句子baba,画出二棵不同的语法树,因而是二义的。11.有文法G[S]:S→iSeS|iS|i该文法是否是二义的。试证明之。〔﹡﹡解答:对于句子iiiei,有两棵不同的语法树,故文法是二义的。12.文法G[T]:T→aR,R→Tb|d生成的语言是什么?G[T]是否为3型文法?〔﹡﹡解答:不是3型文法。13.试写出能够描述下列格式的文法。〔﹡﹡673917422解答:文法产生式规则如下:<>→<局代码><本机码><>→<区前缀><局代码><本机码><区前缀>→<地区码>‘-’<区前缀>→‘<’<地区码>‘>’<地区码>→DIGDIG<地区码>→DIGDIGDIG<局代码>→DIGDIGDIGDIG<本机码>→DIGDIGDIGDIG试构造生成语言的上下文无关文法。〔﹡﹡﹡<1>{anbnci|n≥1,i≥0}<2>{w|w∈{a,b}+,且w中a的个数恰好比b多1}解答:<1>把anbnci分成anbn和ci两部分,分别由两个非终结符号生成,因此,生成此文法的产生式为:S→ABA→aAb|abB→cB|ε<2>令S为开始符号,产生的w中a的个数恰好比b多一个,令E为一个非终结符号,产生含相同个数的a和b的所有串,则产生式如下:S→aE|Ea|bSS|SbS|SSbE→aEbE|bEaE|ε下面的二义性文法描述命题演算公式,为它写一个等价的非二义性文法。G[S]:S->SANDS|SORS|NOTS|p|q|<S>〔﹡﹡解答:G[S]:S->SANDA|AA->AORB|BB->NOTB|p|q|<S>16.对于下列语言分别写出它们的正规表达式。〔﹡﹡<1>

英文字母组成的所有符号串,要求符号串中顺序包含五个元音。<2>

英文字母组成的所有符号串,要求符号串中的字母依照词典顺序排列。解答:<1>令Letter表示除这五个元音外的其它字母。<<letter>*A<letter>*E<letter>*I<letter>*O<letter>*U<letter>>*<2>A*B*Z*第三章词法分析与有穷自动机多项选择题:1.ACE2.ABD填空题:1.确定有限自动机DFA是〔NFA的一个特例。〔﹡2.若二个正规式所表示的〔正规集相同,则认为二者是等价的。〔﹡3.一个字集是正规的,当且仅当它可由〔DFA/NFA所〔识别。〔﹡判断题:1.错误2.错误3.错误4.正确5.正确6.正确7.正确8.正确9.错误10.正确综合题:1.设M=〔{x,y},{a,b},f,x,{y}为一非确定的有限自动机,其中f定义如下:f〔x,a={x,y}f〔a,b={y}f〔y,a=φf〔y,b={x,y}试构造相应的确定有限自动机M′。〔﹡﹡解答:对照自动机的定义M=<S,Σ,f,S0,Z>,由f的定义可知f<x,a>、f<y,b>均为多值函数,所以是一非确定有限自动机,先画出NFAM相应的状态图,如图下所示。图NFAM用子集法构造状态转换矩阵下表所示。将转换矩阵中的所有子集重新命名而形成下表所示的状态转换矩阵。表状态转换矩阵即得到M′=〔{0,1,2},{a,b},f,0,{1,2},其状态转换图如下图所示。将上图的DFAM′最小化。首先,将M′的状态分成终态组{1,2}与非终态组{0};其次,考察{1,2}。由于{1,2}a={1,2}b={2}{1,2},所以不再将其划分了,也即整个划分只有两组{0},{1,2}:令状态1代表{1,2},即把原来到达2的弧都导向1,并删除状态2。最后,得到如下图所示化简DFAM′。图化简后的DFAM′2.对给定正规式b*〔d|ad〔b|ab+,构造其NFAM。〔﹡﹡解答:首先用A+=AA*改造正规式得:b*<d|ad><b|ab><b|ab>*;其次,构造该正规式的NFAM,如下图所示。图NFAM3.字母表{a,b}上的正规式R=〔ba|a*,构造R的相应DFA。〔﹡﹡解答:IIaIbx1y1y21y1y221y

IIaIb12322332

4.请写出在∑=〔a,b上,不是a开头的,但以aa结尾的字符串集合的正规表达式,并构造与之等价状态最少的DFA。〔﹡﹡﹡解答:根据题意,不以a开头就意味着以b开头,且以aa结尾的正规式为:b<a|b>*aa根将图1所示的NFA确定化,如图2所示。NFA将图1所示的NFA确定化,如图从图2可知已为最简状态,由于开始状态0只能输入字符b而不能与状态1合并,而状态2和状态3面对输入符号的下一状态相同,但两者一为非终态、一为终态,故也不有合并,故图2所示的状态转换矩阵已是最简的DFA,如图3所示据正规式画出NFA,如图1所示。图2状态转换矩阵图3最简DFA人运狼、羊、菜过河,一次运一件,不让羊吃掉菜,也不让狼吃掉羊,画出渡河的状态转换图。可否将其抽象为一个有限自动机。〔﹡﹡﹡解答:先写出渡河的方法,串中对象顺序为人来回渡河时所运的货物的顺序:①羊空菜羊狼空羊②羊空狼羊菜空羊现给出一个NFA:M=<Σ,Q,0,{9},δ>其中Σ={羊,空,菜,狼}Q={0,1,2,3,4,5,6,7,8,9}转形函数δ<0,羊>=1,

δ<1,空>=2,

δ<2,菜>=3,

δ<2,狼>=5δ<3,羊>=4,

δ<5,羊>=6,

δ<4,狼>=7,

δ<6,菜>=7δ<7,空>=8,

δ<8,羊>=96.对于正规表达式<a|b>*a<a|b>构造最小状态的DFA。〔﹡﹡解答:①NFAM:②DFAM:③化简:

②中的DFAM中没有等价状态,因此为最小化的DFAM。第四章语法分析多项选择题:1.AD2.CE3.ACDE4.CE5.ABCE6.ACDE填空题:1.对于一个文法,如果能够构造〔LR<0>文法。使得它的〔每个入口均是唯一确定的,则称该文法为LR文法。〔﹡2.字的前缀是指该字的〔任意首部。〔﹡3.活前缀是指〔规句型的一个前缀,这种前缀不含〔句柄之后的任何符号。〔﹡4.在LR分析过程中,只要〔输入串的已扫描部分保持可归约成一个〔活前缀,则扫描过的部分正确。〔﹡5.将识别〔活前缀的NFA确定化,使其成为以〔项目集合为状态的DFA,这个DFA就是建立〔LR分析算法的基础。〔﹡﹡6.A→α·称为〔归约项目;对文法开始符S′→α·为〔接受项目;若a为终结符,则称A→α·aβ为〔移进项目;若B为非终结符,则称A→α·aβ为〔待约项目。〔﹡﹡7.LR〔0分析法的名字中"L"表示〔自左至右分析,"R"表示〔采用最右推导的逆过程即最左归约,"0”表示〔向右查看0个字符。〔﹡﹡判断题:1.正确简答题:综合题:1.构造下面文法的LL〔1分析表。〔﹡﹡﹡D→TLT→int|realL→idRR→,idR|ε解答:LL〔1分析表见下表。分析虽然这个文法很简单,我们还是从求开始符号集合和后继符号集合开始。FIRST〔D=FIRST〔T={int,real}FOLLOW〔D=FOLLOW〔L={#}FIRST〔L={id}FOLLOW〔T={id}FIRST〔R={,,ε}FOLLOW〔R={#}有了上面每个非终结符的FIRST集合,填分析表时要计算一个产生式右部α的FIRST〔α就不是件难事了。填表时唯一要小心的时,ε是产生式R→ε右部的一个开始符号,而#在FOLLOW〔R中,所以R→ε填在输入符号#的栏目中。表LL〔1分析表2.下面文法G[S]是否为LL〔1文法?说明理由。〔﹡﹡S→AB|PQxA→xyB→bcP→dP|εQ→aQ|ε解答:该文法不是LL〔1文法,见下面分析中的说明。分析只有三个非终结符有两个选择。〔1P的两个右部dP和ε的开始符号肯定不相交。〔2Q的两个右部aQ和ε的开始符号肯定不相交。〔3对S来说,由于x∈FIRST<AB>,同时也有x∈FIRST<PQx>〔因为P和Q都可能为空。所以该文法不是LL〔1文法。3.设有以下文法:〔﹡﹡﹡G[S]:S→aAbDe|dA→BSD|eB→SAc|cD|εD→Se|ε〔1求出该文法的每一个非终结符U的FOLLOW集。〔2该文法是LL〔1文法吗?〔3构造C[S]的LL〔1分析表。解答:〔1求文法的每一个非终结符U的FOLLOW集的过程如下:因为:①S是识别符号,且有A→BSD、B→SAc、D→Se,所以FOLLOW〔S应包含FIRST<D>∪FIRST<Ac>∪FIRST<e>∪{#}={a,d}∪{a,d,c,e}∪{e}∪{#}={a,c,d,e#}②又因为A→BSD和D→ε,所以FOLLOW中还包含FOLLOW<A>。因为S→aAbDe和B→SAc,所以FOLLOW〔A=FIRST〔bDe∪FIRST〔c={b,c}综合①、②得FOLLOW〔S={a,d,c,e,#}∪{a,b,c,d,e,#}因为A→BSD,所以FOLLOW〔B=FIRST〔SD={a,d}因为S→aAbDe|d、A→BSD|e和B→SAc|cD,所以FOLLOW〔D=FIRST〔e∪FOLLOW〔A∪FOLLOW〔B={e}∪{b,c}∪{a,d}={a,b,c,d,e}〔2G[S]不是LL〔1文法。因为产生式B→SAc|cD|ε中FIRST〔SAc∩FOLLOW〔B={a,d}≠〔3构造G[S]的LL〔1分析表。按照LL〔1分析表的构造算法构造方法G[S]的LL〔1分析表如下表所示。表G[S]的LL〔1分析表4.将文法G[V]改造成为LL<1>的。〔﹡﹡﹡G[V]:V→N|N[E]E→V|V+EN→i解答:对文法G[V]提取公共左因子后得到文法:G′[V]:V→NAA→ε|[E]E→VBB→ε|+EN→i求出文法G′[V]中每一个非终结符号的FIRST集:FIRST<V>={i}FIRST<A>={[,ε}FIRST<E>={i}FIRST<B>={+,ε}FIRST<N>={i}求出文法G′[V]中每一个非终结符号的FOLLOW集:FOLLOW<V>={#}∪FIRST<B>\{ε}∪FOLLOW<E>={#,+,]}FOLLOW<A>=FOLLOW<V>={+,,#}FOLLOW<E>=FIRST<]>\{ε}∪FOLLOW<B>=FIRST<]>\{ε}∪FOLLOW<E>={]}FOLLOW<B>=FOLLOW<E>={]}FOLLOW<N>=FIRST<A>\{ε}∪FOLLOW<V>={[,],+,#}可以看到,对文法G′[V]的产生式A→ε|[E],有FIRST<[E]>∩FOLLOW<A>={[}∩{+,],#}=对产生式B→ε|+E,有FIRST<+E>∩FOLLOW<B>={+}∩{]}=而文法的其他产生式都只有一个不为ε的右部,所以文法G′[V]是LL<1>文法。5.已知文法:〔﹡﹡﹡G[A]:A→aAa|ε〔1该文法是LL〔1文法吗?为什么?〔2若采用LL〔1方法进行语法分析,如何得到该文法的LL〔1分析表?〔3若输入符号串"aaaa",请给出语法分析过程。解答:〔1因为产生式A→aAa|ε有空产生式右部,而FOLLOW<A>={#}∪FIRST<a>={a,#}造成FIRST<A>∩FOLLOW<A>={A,ε}∩{a,#}≠所以该文法不是LL〔1文法。〔2若采用LL〔1方法进行语法分析,必须修改该文法。因该文法产生偶数〔可以为0个a,所以得到文法G′[A]:A→aaA|ε此时对产生式A→aaA|ε,有FOLLOW<A>={#}∪FOLLOW<A>={#},因而FIRST<A>∩FOLLOW<A>={a,ε}∩{#}=所以文法G′[A]是LL〔1文法,按LL〔1分析表构造算法构造该文法的LL〔1分析表如下表所示。表文法G′[A]的LL<1>分析表〔3若采用LL<1>方法进行语法分析,对符号串"aaaa"的分析过程如下表所示。表对符号串"aaaa"的分析过程6.设有文法G[S]为:〔﹡﹡﹡S→a|b|<A>A→SdA|S〔1完成下列算符优先关系表,见下表,并判断G[S]是否为算符优先文法。表算符优先关系表〔2给出句型〔SdSdS的短语、简单短语、句柄、素短语和最左素短语。〔3给出输入串〔adb#的分析过程。解答:〔1先求文法G[S]的FIRSTVT集和LASTVT集:由S→a|b|<A>得:FIRSTVT<S>={a,b,<>;由A→Sd…得:FIRSTVT<A>={d};又由A→S…得:FIRSTVT<S>FIRSTVT<A>,即FIRSTVT<A>={d,a,b,<};由S→a|b|<A>得;LASTVT<S>={a,b,}};由A→…dA得:LASTVT<A>={d},又由A→S得:LASTVT<S>LASTVT<A>,即LASTVT<A>={d,a,b,>}。构造优先关系表方法如下:①对P→…ab…,或P→…aQb…,有ab;②对P→…aR…,而b∈FIRSTVT<R>,有ab;③对P→…Rb…,而a∈FIRSTVT<R>,有ab。由此得到:①由S→<A>得:<>;②由S→<A…得:<FIRSTVT<A>,即:<d,<a,<b,<<;由A→…dA得:dFIRSTVT<A>,即:dd,da,db,d<;③由S→A>得,LASTVT<A>>,即:d>,a>,b>,>>;由A→Sd…得:LASTVT<S>d,即:ad,bd,>d;此外,由#S#得:##;由#FIRSTVT<S>得:#a,#b,#<;由LASTVT<S>#得:d#,a#,b#,>#。最后得到算符优先关系表,见下表。表算符优先关系表由上表可以看出,任何两个终结符之间至少只满足、、三种优先关系之一,故G[S]为算符优先文法。〔2为求出句型〔SdSdS的短语、简单短语、句柄,我们先画出该句型对应的语法树,如下图所示。由图得到:短语:S,SdS,SdSdS,〔SdSdS简单短语〔即直接短语:S句柄〔即最左直接短语:S素短语:SdS,它同时也是该句型的最左素短语。图句型〔SdSdS的语法树〔3输入串〔adb#的分析过程见下表。表输入串〔adb#的分析过程7.设有文法G[S]为:〔﹡﹡﹡S→a|b|<A>A→SdA|S〔1完成下列算符优先关系表,见下表,并判断G[S]是否为算符优先文法。表算符优先关系表〔2给出句型〔SdSdS的短语、简单短语、句柄、素短语和最左素短语。〔3给出输入串〔adb#的分析过程。解答:〔1先求文法G[S]的FIRSTVT集和LASTVT集:由S→a|b|<A>得:FIRSTVT<S>={a,b,<>;由A→Sd…得:FIRSTVT<A>={d};又由A→S…得:FIRSTVT<S>FIRSTVT<A>,即FIRSTVT<A>={d,a,b,<};由S→a|b|<A>得;LASTVT<S>={a,b,}};由A→…dA得:LASTVT<A>={d},又由A→S得:LASTVT<S>LASTVT<A>,即LASTVT<A>={d,a,b,>}。构造优先关系表方法如下:①对P→…ab…,或P→…aQb…,有ab;②对P→…aR…,而b∈FIRSTVT<R>,有ab;③对P→…Rb…,而a∈FIRSTVT<R>,有ab。由此得到:①由S→<A>得:<>;②由S→<A…得:<FIRSTVT<A>,即:<d,<a,<b,<<;由A→…dA得:dFIRSTVT<A>,即:dd,da,db,d<;③由S→A>得,LASTVT<A>>,即:d>,a>,b>,>>;由A→Sd…得:LASTVT<S>d,即:ad,bd,>d;此外,由#S#得:##;由#FIRSTVT<S>得:#a,#b,#<;由LASTVT<S>#得:d#,a#,b#,>#。最后得到算符优先关系表,见下表。表算符优先关系表由上表可以看出,任何两个终结符之间至少只满足、、三种优先关系之一,故G[S]为算符优先文法。〔2为求出句型〔SdSdS的短语、简单短语、句柄,我们先画出该句型对应的语法树,如下图所示。由图得到:短语:S,SdS,SdSdS,〔SdSdS简单短语〔即直接短语:S句柄〔即最左直接短语:S素短语:SdS,它同时也是该句型的最左素短语。图句型〔SdSdS的语法树〔3输入串〔adb#的分析过程见下表。表输入串〔adb#的分析过程8.对于文法G[S]:S→AS|bA→SA|a〔1列出所有LR〔0项目;〔2列出构成文法LR〔0项目集规族。〔﹡﹡﹡解答:首先将文法G拓广为G[S′]:S′→SS→AS|bA→SA|a〔1文法G[S′]的LR〔0项目是:1.S′→·S5.S→AS·9.A→S·A2.S′→S·6.S→·b10.A→SA·3.S→·AS7.S→b·11.A→·a4.S→A·S8.A→·SA12.A→a·〔2用ε-CLOSURE〔闭包办法构造文法G′的LR〔0项目集规族如下:I0:1.S′→·SI3:9.A→S·AI6:12.A→a·3.S→·AS8.A→·SAI7:7.S→b·8.A→·SA3.S→·AS11.A→·a6.S→·b6.S→·b11.A→·aI1:2.S′→S·I4:10.A→SA·9.A→S·A4.S→A·S8.A→·SA3.S→·AS11.A→·a6.S→·b3.S→·AS8.A→·SA6.S→·b11.A→·aI2:4.S→A·SI5:5.S→AS·3.S→·AS9.A→S·A6.S→·b8.A→·SA8.A→·SA11.A→·a11.A→·a3.S→·AS6.S→·b注意:I1中的S′→S·和A→·SA是由状态I0中的1和3读入一个S字符后得到的下一个项目;,而I4中的A→SA和A→A·S则是由I3中的9和3读入一个A字符后得到的下一个项目;I5中的S→AS·和A→S·A则是由I4中的4和8读入一个S字符后得到的下一个项目。状态全体构成了文法G′的LR〔0规族。9.有文法G[S]S→a|∧|〔TT→T,S|S该文法是否是LL〔1文法,若不是,请进行改写。并给出它的分析表。〔﹡﹡﹡解答:不是。T→ST'T'→T,S|SFIRST<S>=FIRST<T>={a,∧,〔}FIRST<T'>={,,ε}FOLLOW<S>={#,,,>}FOLLOW<T'>=FOLLOW<T>={}分析表如下:10.有文法G[S]〔1S→A〔2S→B〔3A→aAb〔4A→c〔5B→aBb〔6B→d试构造相应的LR〔0项目集规族及相应的分析表。〔﹡﹡﹡解答:11.已知文法G[S],其产生式如下:

S→<L>|a

L→L,S|S从G[S]中消除左递归,并为之构造一个非递归预测分析器LL<1>分析表。请说明在句子<a,<a,a>>上的分析器的动作。〔﹡﹡﹡答:将所给文法消除左递归得G':S→<L>|aL→SL'L'→,SL'|ε实现预测分析器的不含递归调用的一种有效方法是使用一分析表和一个栈进行联合控制,下面构造预测分析表:根据文法G'有FIRST<s>={<,a>FOLLOW<S>={>,',',$}FIRST<L>={<,a>FOLLOW<L>={>}FIRST<L’>={','}FOLLOW<L’>={>}按以上结果,构造预测分析表M如下:文法G’是LL<1>的,因为它的LL<1>分析表不含多重定义入口。预测分析器对输入符号串<a,<a,a>>做出的分析动作如下:12.证明下面文法是SLR<1>文法,并构造其SLR分析表。E→E+T|TT→TF|FF→F*|a|b〔﹡﹡﹡答:该文法的拓广文法G'为<0>E'→E<1>E→E+T<2>E→T<3>T→TF<4>T→F<5>F→F*<6>F→a<7>F→b其LR<0>项目集规族和goto函数<识别活前缀的DFA>如下:I0={E'→·E,E→·E+T,E→·T,T→·TF,T→·F,F→·F*,F→·a,F→·b}I1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论