由机器语言到高级语言程序编写与编译练习题答案解析_第1页
由机器语言到高级语言程序编写与编译练习题答案解析_第2页
由机器语言到高级语言程序编写与编译练习题答案解析_第3页
由机器语言到高级语言程序编写与编译练习题答案解析_第4页
由机器语言到高级语言程序编写与编译练习题答案解析_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

1、第 6 章 由机器语言到高级语言:程序编写与编译1、关于计算机语言,下列说法不正确的是 。(A) 所有源程序最后都需被转换为汇编语言程序,机器才能够执行;(B) 所谓“高级语言”和“低级语言”是指其和机器硬件的相关程度,不涉及机器硬件的语 言为高级语言,而与机器硬件相关的语言则为低级语言;(C) 低级语言程序执行效率高是因为用低级语言编程时可以充分利用硬件的各种特殊性,而 高级语言则只能使用硬件的标准结构;(D) 高级语言编程效率高是因为其可用大粒度积木块来构造程序,比一行行语句、一条条 指令来编程效率高出很多。(E) 上述有不正确的。答案:A解释:本题考核对“计算机语言”的理解。(A) 所有

2、源程序最后都需被转换为机器语言程序,机器才能够执行,所以(A)错误;(B)(C)和(D)的叙述都是正确的。具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。2、关于计算机语言,下列说法不正确的是 。(A) 汇编语言和机器语言是以指令为单位来编写程序;(B) 高级语言是以语句为单位来编写程序,一条语句相当于若干条指令(或者说一条语句可用若干条指令来实现 );(C) 面向对象语言或可视化构造语言是以对象(类)为单位来编写程序,一个对象相当于若干条 语句(或者说一个对象可用若干条语句来实现 );(D) 我们可以设计一种新语言,让用户以其更熟悉的对象(类)来编写源程序,然后提供一个编译

3、器将该源程序转换成某种已广泛使用的高级语言源程序,就可以让机器执行该程序。(E) 上述有不正确的。答案: E解释:本题考核对“计算机语言”的理解。(A) (B)(C)和(D)的叙述都是正确的,所以选择(E)。具体内容请参考第六章视频之“从机器语言到汇编语言”以及第六章课件。大学计算机-计算思维练习题集3、关于计算机语言的编译,下列说法不正确的是 。(A) 需要“分词”,将其中的常量、变量名和保留字识别出来,并分类及编号;(B) 需要识别每一条语句所对应的“模式”。任意语句的常量和变量名被归为“标识符”类 别,而标识符与保留字的不同组合关系构成了语句的模式;计算机语言是由有限的语句模式构成 的;

4、(C) 对每一种模式,都有相应的组合构造方法,即模式可被认为是由原子模式或说基本模式 通过组合的方法构造出来的,对原子模式或者基本模式可以事先写好其相应的目标语言的指令或 语句;(D) 按照模式由原子模式的组合次序,可将模式语句转换成目标语言的指令或语句;进一 步按照分类及编号将常量、变量名代入形成最终的目标语言程序,完成编译;(E) 上述有不正确的。答案:E解释:本题考核计算机语言编译的基本思想。(A) (B)(C )和(D)的叙述都是正确的,所以选择(E)。具体内容请参考第六章视频之“高级语言编译器-基本思想”以及第六章课件。4、从语言编译角度看计算机语言,下列说法不正确的是 。(A) 计

5、算机语言就是由标识符和保留字构成的,标识符是可由程序员按规则任意命名的符 号,而保留字则是编译器识别语句模式的重要符号;(B) 计算机语言定义了基本元素的集合,以及基本元素的组合构造规则,所谓基本元素即是 指标识符和保留字,所谓组合构造规则即是指语句的书写模式,即不同标识符和保留字的组合规 则;(C) 标识符可以是常量、变量名,也可以是函数名;保留字可以是赋值符号如“=”、语句结束符号如“;”、基本运算符号如“ +” “”程序段落符号如“ ”等,保留字还可以是其他语句模式的标志性符号。(D) 上述有不正确的。答案:D解释:本题考核从语言编译角度理解计算机语言。(A) (B)(C)的叙述都是正确

6、的,所以选择(D)。具体内容请参考第六章视频之“高级语言编译器-基本思想”以及第六章课件。5、关于普通计算机语言(或者说程序)的基本构成要素,下列说法最完整的是 。(A) 常量与变量和表达式;(B) 常量与变量、表达式和语句;(C) 常量与变量、表达式、语句和函数;(D) 都不完整。答案:C解释:本题考核程序的基本构成要素。程序的基本构成要素包括常量与变量、表达式、语句和函数,所以(C)正确,(A)和(B)叙述不完整。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。6、关于表达式,下列说法不正确的是 。(A) 由常量、变量及各种算术运算符构造的表达式,被称为算术表

7、达式,其结果为一数值;(B) 由常量、变量和各种比较运算符构造的表达式,被称为比较表达式,其结果只能为逻辑“真”或“假”;(C) 由常量、变量和各种逻辑运算符构造的表达式,被称为逻辑表达式,其结果只能为逻辑“真”或“假”;(D) 比较表达式中不能含有算术表达式,逻辑表达式中可以含算术表达式。(E) 上述有不正确的。答案:D解释:本题考核对“表达式”的理解。比较表达式和逻辑表达式中都可以含算术表达式,所以(D)错误;(A)(B)和(C)的叙述都是正确的。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。7、已知A=40; B=30; C=100; D=50,逻辑“与”

8、运算符为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) 计算表达式 (A > B) and (B < C的值,结果为。(A) 100; (B) 30; (C)真;(D)假;答案:C计算表达式 (A > B +20 ) or (B +60 < C的值,结果为。(

9、A) 100; (B) 30; (C)真;(D)假;答案:C(5) 计算表达式C > A +B +D的值,结果为。(A) 120; (B) 100 (C)真;(D)假;答案:D(6) 计算表达式A + A * 5的值,结果为 。(A) 400; (B) 240 (C)真;(D)假;答案:B(7) 计算表达式A < A * 5的值,结果为 。(A) 40; (B) 200; (C) 16Q (D)真;(E)假;答案:D(8) 计算表达式(X > Y) and (X<=Y)的值,结果为。(A) 真;(B)假;答案:B解释:本题考核表达式的计算。(1) (A + (C -B)

10、 *3) / D = (40 + (100 - 30) * 3) / 50 = 5(A)选项正确;(2) (A * A - B * B) + D = (40 * 40-30 * 30) + 50 = 750 (D)选项正确;(3) (A > B)= (40 > 30)为真,(B < C) = (30 < 100为真,所以(A > B) and (B < C 为真,(C)选 项正确;(4) (A > B +20 ) = (40 > 30 +20 ) = ( 40 >50 为假,(B + 60 < C) = (30 + 60 <10

11、0) = (90 < 100 为 真,所以(A > B +20 ) or (B +60 < C为真,(C)选项正确;(5) A+B+D= 40+30+50 = 120 C>A+B+D 为 100>120为假,(D)选项正确;(6) A+A*5=40+40*5=240, (B)选项正确;(7) A*5=40*5=200, A<A*5 为 40<200为真,(D)选项正确;(8) X>Y与X<=Y不能同时成立,而要是“ and”为真时,必须左右两边同时成立,所以(X > Y) and (X<=Y)为假,(B)选项正确;具体内容请参考

12、第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。8已知X=21 , Y=15, Z=22,围绕这些已知条件回答问题:(1) 计算表达式(X>Y) or (Y>Z) and (X<Y) or (Y<Z)的值, 结果为。(A) 真; (B)假;答案:A计算表达式(X>Y) AND (Y>Z) OR (X<Y) AND (Y<Z)的值,结果为。(A) 真;(B)假;答案:B计算表达式(X>Y) AND (Y>Z) OR (X<Z) AND (Y<Z)的值,(A)真;(B)假;答案:A假设不知道X、Y的值,计算表达

13、式(X > Y) and (X<=Y)的值,结果为。(A)真;(B)假;答案:B解释:本题考核表达式的计算。(1) (X>Y)=(21>15)为真,(Y>Z)=(15>22)为假,因此(X>Y) or (Y>Z)为真,(X<Y) = (21<15)为 假,(Y<Z)=(15<22)为真,因此(X<Y) or (Y<Z)为真,所以(X>Y) or (Y>Z) and (X<Y) or (Y<Z)为真,(A)选项正确;(2) (X>Y)=(21>15)为真,(Y>Z)=(1

14、5>22)为假,因此(X>Y) and (Y>Z)为假,(X<Y) = (21<15)为 假,(Y<Z)=(15<22为真,因此(X<Y) and (Y<Z)为假,所以(X>Y) AND (Y>Z) OR (X<Y) AND (Y<Z)为假,(B)选项正确;(3) (X>Y)=(21>15)为真,(Y>Z)=(15>22)为假,因此(X>Y) and (Y>Z)为假,(X<Z) = (21<22)为 真,(Y<Z)=(15<22为真,因此(X<Y) a

15、nd (Y<Z)为真,所以(X>Y) AND (Y>Z) OR (X<Z) AND (Y<Z)为真,(A)选项正确;(4) X>Y与X<=Y不能同时成立,而要是“ and”为真时,必须左右两边同时成立,所以(X > Y) and (X<=Y)为假,(B)选项正确;具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。9.读程序,并回答问题:N = 101;If N/2=0 ThenN = N/2;ElseN = N * 3 +1;End If该程序执行完成后,N的值为。(A) 101; (B) 55.5 (C) 30

16、4; (D) 167.5答案:C解释:本题考核分支结构。已知N = 101,贝U N/2 = 50不等于0,不符合If语句的条件,所以进入 Else语句,N = N * 3+ 1 = 101 * 3 +1 = 304 所以(C)正确。(程序)的基本构成要素”以及第六章课件。具体内容请参考第六章视频之“计算机语言10已知程序如下,回答下列问题:X = Z + Y;If Y < Z X = X -Y; Else X= X -Z;X = X -Y;If X < Z X = Y +20; X = X -Z;If X>Y X = X -Y;(1) 已知X=10, Y=20, Z=30亥

17、程序执行完成后,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, Y < Z = 20 < 30 为真,所以执行 X

18、 = X -Y = 50 -20 = 3Q 接着 X = X -Y = 30 -20 = 10 X < Z = 10 < 30为真,所以执行 X = Y +20 = 20 +20 = 40 接 着X = X -Z = 40-30 = 1Q X>Y = 10>20为假,所以程序结束,最终 X=10, (A)正确。(2) 程序开始执行,X = Z + Y = 30 + 50 = 80, Y < Z = 50 < 30为假,所以执行 X = X - Z = 80 -30 = 50,接着 X = X - Y = 50 - 50 = 0,X < Z = 0 &l

19、t; 30 为真,所以执行 X = Y +20 = 50 +20 = 70,接着X = X - Z = 70 - 30 = 40 X>Y = 40>50为假,所以程序结束,最终 X=40, (D)正确。(3) 程序开始执行,X = Z + Y = 30 + 30 = 60, Y < Z = 30 < 30为假,所以执行 X = X - Z = 60 -30 = 30,接着 X = X - Y = 30 - 30 = 0, X < Z = 0 < 30 为真,所以执行 X = Y +20 = 30 +20 = 50,接着X = X - Z = 50 - 30

20、= 20 X>Y = 20>30为假,所以程序结束,最终 X=20, (B)正确。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。11.读程序,并回答问题:X=1 ;Y=2;Sum=0;Do Sum = X+Y;X=X+1 ;Y=Y+1 ; While (Sum<=20)(1) 该程序执行完成后,Sum的值为。(A) 20; (B) 21; (C) 19 (D) 18;答案:B(2)该程序执行完成后,X的值为。(A) 8; (B) 9; (C) 10 (D) 11;答案:D解释:本题考核循环结构。Do-While结构先执行一遍Do部分,然后判断是

21、否符合条件,若符合条件则接着执行Do部分直至条件为假,此时程序结束。(1) 程序开始执行,Sum = X+Y = 1 + 2 = 3 X=X+1 = 1+2 = 3, Y=Y+1 = 2 +1 = 3,此时 Sum= 3 <=20,所以接着执行 Do部分,直到Sum = X + Y = 10 + 11 = 21时,此时X = 10, Y = 11,接着执 行 X = X + 1 = 10 + 1 = 11, Y = Y + 1 = 11 + 1 = 12 此时 Sum = 21 > 20 条件为假,程序结束。所 以该程序执行完成后,Sum的值为21, (B)正确。(2) 由(1)题

22、知,该程序执行完成后,X的值为11, (D)正确。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。12.读程序,并回答问题:(10)N = 6;(20)X = 0;(30)Y = 1;(40)For I = 1 To N-1 Step 1(50)Z = X + Y;(60)X = Y;(70)Y = Z;(80)Next I(1) 该程序执行完成后,Z的值为。(A) 3 ; (B) 5; (C) 8; (D) 13;答案:C(2)程序行(60)执行了多少次?次数为 。(A) 4 ; (B) 5; (C) 6; (D) 7;答案:B解释:本题考核循环结构。For循环

23、条件是 I 从 1 至U N-1,即从 1 到 5,1=1 时,Z = X + Y = 0 + 1 = 1,X = Y = 1,Y = Z = 1; I = 2 时,Z = X + Y = 1 + 1 = 2 X = Y = 1, Y = Z =2; I = 3 时,Z = X + Y = 1 + 2 = 3 X = Y = 2,Y = Z =3; I = 4时,Z = X + Y = 2 + 3 = 5 X = Y = 3, Y = Z =5; I = 5时,Z = X + Y = 3 + 5 = 8 X =Y = 5 , Y = Z =8 ;程序结束。所以该程序执行完成后,Z的值为8, (

24、C)正确;For循环从I=1到5 共执行了 5次,程序行(60)是 For循环中的一部分,所以也执行了 5次,(B)正确。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。13.读程序,并回答问题:(10)K = 0;(20)I = 2;(30)While (I<=8)(40) K = K + I;(50)I = I + 2; (1)该程序执行完成后,K的值为。(A) 35; (B) 20; (C) 36; (D) 12;答案:B(2) 程序行(40)执行了多少次?次数为 。(A) 2 ; (B) 4; (C) 6; (D) 8;答案:B解释:本题考核循环结构

25、。(1) 程序开始执行,I = 2 <=8,条件为真,执行 K = K + I = 0 + 2 = 2,I = I + 2 = 2 + 2 = 4; I = 4 <=8,条件为真,执行 K = K + I = 2 + 4 = 6 I = I + 2 = 4 + 2 = 6 I = 6 <=8 条件为真,执行 K = K +I = 6 + 6 = 12 I = I + 2 = 6 + 2 = 8 I = 8 <=8 条件为真,执行 K = K + I = 12 + 8 = 20 I = I + 2 = 8 + 2 =10; I = 10 > 8条件为假,程序结束。所

26、以该程序执行完成后,K的值为20, (B)正确。(2) 由(1)知,程序行(40)执行了 4次,(B)正确。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。14已知函数Fact的程序如下,回答下列问题:Long Int Fact(i nt n) Long Int x;If (n > 1) x = Fact( n_1);return n *x; else return 1; (1)Fact(4的 值为。(A) 10; (B) 24; (C) 120 (D) 15;答案:B解释:(2)在执行Fact(5的过程中,Fact函数被调用的次数为 。(A) 3 ; (B

27、) 4; (C) 5; (D) 6;答案:C解释:本题考核对函数的理解和运用。(1)该程序是计算阶乘,即Fact(n) = n!,该程序的流程图如图(a)所示,所以Fact(4) = 4! = 24,(B) 正确,具体过程如图(b)所示。¥Ibiai(2)由题(1)中图(b)知,在执行Fact(4的过程中,Fact函数被调用了 4次,所以在执行Fact(5) 时,Fact函数会被调用5次,(C)正确。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(II)”以及第六章课件。15已知函数Fact的程序如下,回答下列问题:Long Int Fact(i nt n) Long

28、Int x;If (n > 1) x = Fact( n_1);return (n+x)*2; else return 1;(1)Fact(4的 值为。(A) 14; (B) 24; (C) 44; (D) 64;答案:C解释:本题考核算法的循环结构由程序分析可知,调用函数 4次,因此Fact (4)的值为44。以及第六章课件。以及第六章课件。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”(2)在执行Fact(4的过程中,Fact函数被调用的次数为 。(A) 3 ; (B) 4; (C) 5; (D) 6;答案:B解释:本题考核算法的循环结构由程序分析可知,调用函数 4次

29、,因此Fact (4)的值为44。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”16已知程序如下,回答下列问题:main ()int i, n;long sum = 0, p = ;1./输入n值的语句,略for (i=1; i<=n; i+)P = P * ; sum = sum + p./输出sum值的语句,略 该程序实现的功能为。(A) sum = 1*2*3*.* n;(B) sum = 1!+2!+.+n!(C) sum = 1+2+3+.+n(D) sum = 1*2+2*3+( n-1)*n(E) 上述都不正确。答案:B解释:本题考核算法的分析及循环结构的分

30、析很明显是1到n的阶乘,选B。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。17已知程序如下,回答下列问题:(10)mai n()(20) intcoun ter(30)./输入N值的语句,略(40)long product = 1(50)for coun ter = 1 to N step 2(60) product = product * coun ter (70)return product;(80)(1)该程序实现的功能为。(A) product = 1*2*3*.*(N-1);(B) product = 1+ 2+3+.+ (N-1)(C) produ

31、ct = 1*3*5*.* (N-1)(D) product = 1+3+5+.+(N-1)(E) 上述都不正确。答案:C解释:本题考核算法与结构分析由程序可知,为求1*3*5*.*(N-1)的值。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。(2)当程序行(60执行了 3次以后,Produc和Counte的值分别为。(A) 105,5;(B) 15, 7;(C) 15, 5;(D) 105, 7;(E) 上述都不正确。答案:C解释:本题考核算法与结构分析在程序执行3次时,Produc带入可知为15,Counter为5。18已知如下多元素变量,回答下列问题:列M

32、2jr31具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。112522X45398“44212801003483751642(1)已知 1=2; J=4;则 MIJ的值为。(A) 44; (B) 83; (C) 22; (D) 21; (E上述都不正确。答案:A解释:本题考核数据结构及算法分析。(1)看表得知 M24=44。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。(2)已知 1=2; J=2;则 Ml+1J+1的值为。(A) 39; (B) 11; (C) 0; (D) 16; (E)上述都不正确。答案:C解释:本题考核数据结

33、构及算法分析。(2)看表得知 M33=0。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。(3) 已知 l=1; J=1 ;则 MI+1J+2 的值为。(A) 13; (B) 47; (C) 8; (D) 10; (E)上述都不正确。答案:B解释:本题考核数据结构及算法分析。(3) 看表得知 M21+2=47。具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。(4) 执行下列程序,回答问题。(10)int I = 3, J;(20)int Sum1=Q Sum2=0;(30)For J=1 to 4 Step 1(40)(50)上述程序执行完成后,Sum1 = Sum1 + MIJSum2 = Sum2 + MJI Sum1和Sum2的值分别为。(A) 576, 576(B) 136, 175;(C) 149, 105;(D) 105, 149;(E) 上述都不正确。答案:C解释:本题考核数据结构及算法分析。(4) 4 次循环 Sum仁 149 Sum2=105具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。(5)执行下列程序,回答问题。(10)int J;(20)int Sum仁Q Sum2=0(30)For J=1 to 4 Ste

温馨提示

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

评论

0/150

提交评论