由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx

上传人:b****6 文档编号:17505787 上传时间:2022-12-06 格式:DOCX 页数:19 大小:1.50MB
下载 相关 举报
由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx_第1页
第1页 / 共19页
由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx_第2页
第2页 / 共19页
由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx_第3页
第3页 / 共19页
由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx_第4页
第4页 / 共19页
由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx

《由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx》由会员分享,可在线阅读,更多相关《由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx(19页珍藏版)》请在冰豆网上搜索。

由机器语言到高级语言程序编写和编译练习题答案解析文档格式.docx

(C)标识符可以是常量、变量名,也可以是函数名;

保留字可以是赋值符号如“=”、语句结束符号如“;

”、基本运算符号如“+”“-”“*”“/”、程序段落符号如“{}”等,保留字还可以是其他语句模式的标志性符号。

(D)上述有不正确的。

D

本题考核从语言编译角度理解计算机语言。

(A)(B)(C)的叙述都是正确的,所以选择(D)。

5、关于普通计算机语言(或者说程序)的基本构成要素,下列说法最完整的是_____。

(A)常量与变量和表达式;

(B)常量与变量、表达式和语句;

(C)常量与变量、表达式、语句和函数;

(D)都不完整。

C

本题考核程序的基本构成要素。

程序的基本构成要素包括常量与变量、表达式、语句和函数,所以(C)正确,(A)和(B)叙述不完整。

具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(I)”以及第六章课件。

6、关于表达式,下列说法不正确的是_____。

(A)由常量、变量及各种算术运算符构造的表达式,被称为算术表达式,其结果为一数值;

(B)由常量、变量和各种比较运算符构造的表达式,被称为比较表达式,其结果只能为逻辑“真”或“假”;

(C)由常量、变量和各种逻辑运算符构造的表达式,被称为逻辑表达式,其结果只能为逻辑“真”或“假”;

(D)比较表达式中不能含有算术表达式,逻辑表达式中可以含算术表达式。

本题考核对“表达式”的理解。

比较表达式和逻辑表达式中都可以含算术表达式,所以(D)错误;

(A)(B)和(C)的叙述都是正确的。

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;

(2)计算表达式 (A*A-B*B)+D 的值,结果为_____。

(A)70;

(B)150;

(C)570;

 (D)750;

(3)计算表达式 (A>

B)and(B<

C)的值,结果为_____。

(A)100;

(B)30;

(C)真;

 (D)假;

(4)计算表达式 (A>

B+20)or(B+60<

(5)计算表达式C>

A+B+D的值,结果为_____。

(A)120;

(B)100;

(6)计算表达式A+A*5的值,结果为_____。

(A)400;

(B)240;

B

(7)计算表达式A<

A*5的值,结果为_____。

(A)40;

(B)200;

(C)160;

(D)真;

(E)假;

(8)计算表达式(X>

Y)and(X<

=Y)的值,结果为_____。

(A)真;

(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)(A>

B)=(40>

30)为真,(B<

C)=(30<

100)为真,所以(A>

C)为真,(C)选项正确;

(4)(A>

B+20)=(40>

30+20)=(40>

50)为假,(B+60<

C)=(30+60<

100)=(90<

100)为真,所以(A>

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)为假,(B)选项正确;

8.已知X=21,Y=15,Z=22,围绕这些已知条件回答问题:

(1)计算表达式((X>

Y)or(Y>

Z))and((X<

Y)or(Y<

Z))的值,

结果为_____。

(2)计算表达式((X>

Y)AND(Y>

Z))OR((X<

Y)AND(Y<

(3)计算表达式((X>

Z)AND(Y<

(4)假设不知道X、Y的值,计算表达式(X>

(1)(X>

Y)=(21>

15)为真,(Y>

Z)=(15>

22)为假,因此((X>

Z))为真,(X<

Y)=(21<

15)为假,(Y<

Z)=(15<

22)为真,因此((X<

Z))为真,所以((X>

Z))为真,(A)选项正确;

(2)(X>

Y)and(Y>

Z))为假,(X<

Y)and(Y<

Z))为假,所以((X>

Z))为假,(B)选项正确;

(3)(X>

Z)=(21<

22)为真,(Y<

(4)X>

9.读程序,并回答问题:

N=101;

IfN/2==0Then

N=N/2;

Else

N=N*3+1;

EndIf

该程序执行完成后,N的值为_____。

(A)101;

(B)55.5;

(C)304;

(D)167.5;

本题考核分支结构。

已知N=101,则N/2=50不等于0,不符合If语句的条件,所以进入Else语句,N=N*3+1=101*3+1=304,所以(C)正确。

10.已知程序如下,回答下列问题:

X=Z+Y;

IfY<

Z {

X=X–Y;

}

Else{

X=X–Z;

X=X–Y;

IfX<

Z{X=Y+20;

}

X=X–Z;

IfX>

Y

{X=X–Y;

(1)已知X=10,Y=20,Z=30该程序执行完成后,X的值为_____。

(A)10;

(B)20;

(C)30;

(D)40;

(E)上述都不对。

(2)已知X=10,Y=50,Z=30该程序执行完成后,X的值为_____。

(3)已知X=30,Y=30,Z=30该程序执行完成后,X的值为_____。

(A)10;

(1)程序开始执行,X=Z+Y=30+20=50,Y<

Z=20<

30为真,所以执行X=X–Y=50–20=30,接着X=X–Y=30–20=10,X<

Z=10<

30为真,所以执行X=Y+20=20+20=40,接着X=X–Z=40–30=10,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<

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<

30为真,所以执行X=Y+20=30+20=50,接着X=X–Z=50–30=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;

(2)该程序执行完成后,X的值为_____。

(A)8;

(B)9;

(D)11;

本题考核循环结构。

Do-While结构先执行一遍Do部分,然后判断是否符合条件,若符合条件则接着执行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)题知,该程序执行完成后,X的值为11,(D)正确。

12.读程序,并回答问题:

(10)N=6;

(20)X=0;

(30)Y=1;

(40)ForI=1ToN-1Step1

(50)Z=X+Y;

(60)X=Y;

(70)Y=Z;

(80)NextI

(1)该程序执行完成后,Z的值为_____。

(A)3;

(B)5;

(C)8;

(D)13;

(2)程序行(60)执行了多少次?

次数为_____。

(A)4;

(C)6;

(D)7;

For循环条件是I从1到N-1,即从1到5,I=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,(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;

(C)36;

(D)12;

(2)程序行(40)执行了多少次?

(A)2;

(B)4;

(D)8;

(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,条件为假,程序结束。

所以该程序执行完成后,K的值为20,(B)正确。

(2)由

(1)知,程序行(40)执行了4次,(B)正确。

14.已知函数Fact的程序如下,回答下列问题:

LongIntFact(intn)

{LongIntx;

If(n>

1)

{x=Fact(n-1);

returnn*x;

elsereturn1;

(1)Fact(4)的值为_____。

(B)24;

(C)120;

(D)15;

(2)在执行Fact(5)的过程中,Fact函数被调用的次数为_____。

(C)5;

(D)6;

本题考核对函数的理解和运用。

(1)该程序是计算阶乘,即Fact(n)=n!

,该程序的流程图如图(a)所示,所以Fact(4)=4!

=24,(B)正确,具体过程如图(b)所示。

(2)由题

(1)中图(b)知,在执行Fact(4)的过程中,Fact函数被调用了4次,所以在执行Fact(5)时,Fact函数会被调用5次,(C)正确。

具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素(II)”以及第六章课件。

15.已知函数Fact的程序如下,回答下列问题:

return(n+x)*2;

(A)14;

(C)44;

(D)64;

本题考核算法的循环结构

由程序分析可知,调用函数4次,因此Fact(4)的值为44。

具体内容请参考第六章视频之“计算机语言(程序)的基本构成要素”以及第六章课件。

(2)在执行Fact(4)的过程中,Fact函数被调用的次数为_____。

16.已知程序如下,回答下列问题:

main()

{

inti,n;

longsum=0,p=1;

...//输入n值的语句,略

for(i=1;

i<

=n;

i++)

p=p*i;

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)上述都不正确。

本题考核算法的分析及循环结构的分析

很明显是1到n的阶乘,选B。

17.已知程序如下,回答下列问题:

(10)main()

(20){intcounter;

(30)...//输入N值的语句,略

(40)longproduct=1;

(50)forcounter=1toNstep2

(60){product=product*counter;

(70)returnproduct;

(80)}

(1)该程序实现的功能为_____。

(A)product=1*2*3*...*(N-1);

(B)product=1+2+3+...+(N-1);

(C)product=1*3*5*...*(N-1);

(D)product=1+3+5+...+(N-1);

本题考核算法与结构分析

由程序可知,为求1*3*5*...*(N-1)的值。

(2)当程序行(60)执行了3次以后,Product和Counter的值分别为_____。

(A)105,5;

(B)15,7;

(C)15,5;

(D)105,7;

在程序执行3次时,Product

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 自我管理与提升

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1