第6章由机器语言到高级语言程序编写与编译练习题答案解析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第6章由机器语言到高级语言:程序编写与编译1、关于计算机语言,下列说法不正确的是_____。(A)所有源程序最后都需被转换为汇编语言程序,机器才能够执行;(B)所谓“高级语言”和“低级语言”是指其和机器硬件的相关程度,不涉及机器硬件的语言为高级语言,而与机器硬件相关的语言则为低级语言;(C)低级语言程序执行效率高是因为用低级语言编程时可以充分利用硬件的各种特殊性,而高级语言则只能使用硬件的标准结构;(D)高级语言编程效率高是因为其可用大粒度积木块来构造程序,比一行行语句、一条条指令来编程效率高出很多。(E)上述有不正确的。答案:A解释:本题考核对“计算机语言”的理解。(A)所有源程序最后都需被转换为机器语言程序,机器才能够执行,所以(A)错误;(B)(C)和(D)的叙述都是正确的。具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。2、关于计算机语言,下列说法不正确的是_____。(A)汇编语言和机器语言是以指令为单位来编写程序;(B)高级语言是以语句为单位来编写程序,一条语句相当于若干条指令(或者说一条语句可用若干条指令来实现);(C)面向对象语言或可视化构造语言是以对象(类)为单位来编写程序,一个对象相当于若干条语句((或者说一个对象可用若干条语句来实现);(D)我们可以设计一种新语言,让用户以其更熟悉的对象(类)来编写源程序,然后提供一个编译器将该源程序转换成某种已广泛使用的高级语言源程序,就可以让机器执行该程序。(E)上述有不正确的。答案:E解释:本题考核对“计算机语言”的理解。(A)(B)(C)和(D)的叙述都是正确的,所以选择(E)。具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。大学计算机-计算思维练习题集3、关于计算机语言的编译,下列说法不正确的是_____。(A)需要“分词”,将其中的常量、变量名和保留字识别出来,并分类及编号;(B)需要识别每一条语句所对应的“模式”。任意语句的常量和变量名被归为“标识符”类别,而标识符与保留字的不同组合关系构成了语句的模式;计算机语言是由有限的语句模式构成的;(C)对每一种模式,都有相应的组合构造方法,即模式可被认为是由原子模式或说基本模式通过组合的方法构造出来的,对原子模式或者基本模式可以事先写好其相应的目标语言的指令或语句;(D)按照模式由原子模式的组合次序,可将模式语句转换成目标语言的指令或语句;进一步按照分类及编号将常量、变量名代入形成最终的目标语言程序,完成编译;(E)上述有不正确的。答案:E解释:本题考核计算机语言编译的基本思想。(A)(B)(C)和(D)的叙述都是正确的,所以选择(E)。具体内容请参考第六章视频之“高级语言编译器-基本思想”以及第六章课件。4、从语言编译角度看计算机语言,下列说法不正确的是_____。(A)计算机语言就是由标识符和保留字构成的,标识符是可由程序员按规则任意命名的符号,而保留字则是编译器识别语句模式的重要符号;(B)计算机语言定义了基本元素的集合,以及基本元素的组合构造规则,所谓基本元素即是指标识符和保留字,所谓组合构造规则即是指语句的书写模式,即不同标识符和保留字的组合规则;(C)标识符可以是常量、变量名,也可以是函数名;保留字可以是赋值符号如“=”、语句结束符号如“;”、基本运算符号如“+”“-”“*”“/”、程序段落符号如“{}”等,保留字还可以是其他语句模式的标志性符号。(D)上述有不正确的。答案:D解释:本题考核从语言编译角度理解计算机语言。(A)(B)(C)的叙述都是正确的,所以选择(D)。具体内容请参考第六章视频之“高级语言编译器-基本思想”以及第六章课件。5、关于普通计算机语言(或者说程序)的基本构成要素,下列说法最完整的是_____。大学计算机-计算思维练习题集(A)常量与变量和表达式;(B)常量与变量、表达式和语句;(C)常量与变量、表达式、语句和函数;(D)都不完整。答案:C解释:本题考核程序的基本构成要素。程序的基本构成要素包括常量与变量、表达式、语句和函数,所以(C)正确,(A)和(B)叙述不完整。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。6、关于表达式,下列说法不正确的是_____。(A)由常量、变量及各种算术运算符构造的表达式,被称为算术表达式,其结果为一数值;(B)由常量、变量和各种比较运算符构造的表达式,被称为比较表达式,其结果只能为逻辑“真”或“假”;(C)由常量、变量和各种逻辑运算符构造的表达式,被称为逻辑表达式,其结果只能为逻辑“真”或“假”;(D)比较表达式中不能含有算术表达式,逻辑表达式中可以含算术表达式。(E)上述有不正确的。答案:D解释:本题考核对“表达式”的理解。比较表达式和逻辑表达式中都可以含算术表达式,所以(D)错误;(A)(B)和(C)的叙述都是正确的。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。7、已知A=40;B=30;C=100;D=50,逻辑“与”运算符为and,“或”运算符为or,“非”运算符为not。围绕这些已知条件回答问题:(1)计算表达式(A+(C–B)*3)/D的值,结果为_____。(A)5;(B)-5;(C)10;(D)4;答案:A大学计算机-计算思维练习题集(2)计算表达式(A*A-B*B)+D的值,结果为_____。(A)70;(B)150;(C)570;(D)750;答案:D(3)计算表达式(AB)and(BC)的值,结果为_____。(A)100;(B)30;(C)真;(D)假;答案:C(4)计算表达式(AB+20)or(B+60C)的值,结果为_____。(A)100;(B)30;(C)真;(D)假;答案:C(5)计算表达式CA+B+D的值,结果为_____。(A)120;(B)100;(C)真;(D)假;答案:D(6)计算表达式A+A*5的值,结果为_____。(A)400;(B)240;(C)真;(D)假;答案:B(7)计算表达式AA*5的值,结果为_____。(A)40;(B)200;(C)160;(D)真;(E)假;答案:D(8)计算表达式(XY)and(X=Y)的值,结果为_____。大学计算机-计算思维练习题集(A)真;(B)假;答案:B解释:本题考核表达式的计算。(1)(A+(C–B)*3)/D=(40+(100-30)*3)/50=5,(A)选项正确;(2)(A*A-B*B)+D=(40*40–30*30)+50=750,(D)选项正确;(3)(AB)=(4030)为真,(BC)=(30100)为真,所以(AB)and(BC)为真,(C)选项正确;(4)(AB+20)=(4030+20)=(4050)为假,(B+60C)=(30+60100)=(90100)为真,所以(AB+20)or(B+60C)为真,(C)选项正确;(5)A+B+D=40+30+50=120,CA+B+D为100120为假,(D)选项正确;(6)A+A*5=40+40*5=240,(B)选项正确;(7)A*5=40*5=200,AA*5为40200为真,(D)选项正确;(8)XY与X=Y不能同时成立,而要是“and”为真时,必须左右两边同时成立,所以(XY)and(X=Y)为假,(B)选项正确;具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。8.已知X=21,Y=15,Z=22,围绕这些已知条件回答问题:(1)计算表达式((XY)or(YZ))and((XY)or(YZ))的值,结果为_____。(A)真;(B)假;答案:A(2)计算表达式((XY)AND(YZ))OR((XY)AND(YZ))的值,结果为_____。(A)真;(B)假;答案:B(3)计算表达式((XY)AND(YZ))OR((XZ)AND(YZ))的值,结果为_____。(A)真;(B)假;大学计算机-计算思维练习题集答案:A(4)假设不知道X、Y的值,计算表达式(XY)and(X=Y)的值,结果为_____。(A)真;(B)假;答案:B解释:本题考核表达式的计算。(1)(XY)=(2115)为真,(YZ)=(1522)为假,因此((XY)or(YZ))为真,(XY)=(2115)为假,(YZ)=(1522)为真,因此((XY)or(YZ))为真,所以((XY)or(YZ))and((XY)or(YZ))为真,(A)选项正确;(2)(XY)=(2115)为真,(YZ)=(1522)为假,因此((XY)and(YZ))为假,(XY)=(2115)为假,(YZ)=(1522)为真,因此((XY)and(YZ))为假,所以((XY)AND(YZ))OR((XY)AND(YZ))为假,(B)选项正确;(3)(XY)=(2115)为真,(YZ)=(1522)为假,因此((XY)and(YZ))为假,(XZ)=(2122)为真,(YZ)=(1522)为真,因此((XY)and(YZ))为真,所以((XY)AND(YZ))OR((XZ)AND(YZ))为真,(A)选项正确;(4)XY与X=Y不能同时成立,而要是“and”为真时,必须左右两边同时成立,所以(XY)and(X=Y)为假,(B)选项正确;具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。9.读程序,并回答问题:N=101;IfN/2==0ThenN=N/2;ElseN=N*3+1;EndIf该程序执行完成后,N的值为_____。(A)101;(B)55.5;(C)304;(D)167.5;答案:C解释:本题考核分支结构。已知N=101,则N/2=50不等于0,不符合If语句的条件,所以进入Else语句,N=N*3大学计算机-计算思维练习题集+1=101*3+1=304,所以(C)正确。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。10.已知程序如下,回答下列问题:X=Z+Y;IfYZ{X=X–Y;}Else{X=X–Z;}X=X–Y;IfXZ{X=Y+20;}X=X–Z;IfXY{X=X–Y;}(1)已知X=10,Y=20,Z=30该程序执行完成后,X的值为_____。(A)10;(B)20;(C)30;(D)40;(E)上述都不对。答案:A(2)已知X=10,Y=50,Z=30该程序执行完成后,X的值为_____。(A)10;(B)20;(C)30;(D)40;(E)上述都不对。答案:D(3)已知X=30,Y=30,Z=30该程序执行完成后,X的值为_____。(A)10;(B)20;(C)30;(D)40;(E)上述都不对。答案:B解释:本题考核分支结构。(1)程序开始执行,X=Z+Y=30+20=50,YZ=2030为真,所以执行X=X–Y=50–20=30,接着X=X–Y=30–20=10,XZ=1030为真,所以执行X=Y+20=20+20=40,接着X=X–Z=40–30=10,XY=1020为假,所以程序结束,最终X=10,(A)正确。大学计算机-计算思维练习题集(2)程序开始执行,X=Z+Y=30+50=80,YZ=5030为假,所以执行X=X–Z=80–30=50,接着X=X–Y=50–50=0,XZ=030为真,所以执行X=Y+20=50+20=70,接着X=X–Z=70–30=40,XY=4050为假,所以程序结束,最终X=40,(D)正确。(3)程序开始执行,X=Z+Y=30+30=60,YZ=3030为假,所以执行X=X–Z=60–30=30,接着X=X–Y=30–30=0,XZ=030为真,所以执行X=Y+20=30+20=50,接着X=X–Z=50–3

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功