阅读下列程序段,选出正确的结果。()SET TALK OFF C

题目

阅读下列程序段,选出正确的结果。()SET TALK OFF CLEARSTORE 0 TO a,b,nf=.T.DO WHILE fa=a+1DO CASECASE INT(a/3)<>a/3b=b+aCASEa>10EXITCASE a<=10n=n+1ENDCASEEND DO?n,bSET TALKONRETURN

  • A、n=3 b=48
  • B、n=4 b=48
  • C、n=3 b=27
  • D、n=4 b=27
参考答案和解析
正确答案:A
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

下列程序的运行结果是【 】。

SET TALK OFF

S=0

FOR N=1 TO 100

S=S+N

IF N>=10

EXIT

S=N

ENDIF

NEXT

?S

RETURN


正确答案:55
55

第2题:

有如下程序: * * *主程序:P.prg* * * * * *子程序:P1.prg* * * SET TALK OFF X2=X2+1 STORE 2 TO X1,X2,X3 DO P2 X1=Xl+1 X1:Xl+1 DO PI RETURN ?xl+x2+x3 * * *子程序:P2.prg* * * RETURN x3=x3+1 SET TALK ON RETURN TO MASTER 执行命令DOP后,屏幕显示的结果为

A.3

B.4

C.9

D.10


正确答案:C
解析:首先x1的值在主程序中加1,变为3,然后调用后面的子程序p1,x2加1,变为3,接着调用于程序P2,x3加1变为3,此时就没有再执行p1中的x1+1。执行x3就直接返回主程序。由参数任递知x1,x2,x3都为3。

第3题:

有如下一段程序: SET TALK OFF A=1 B=0 DO WHILE A<=100 IF.NOT.A/2=INT(A/2) B=B+A ENDIF A=A+1 ENDDO ? B SET TALK ON RETURN 该程序的功能是______。

A.求1~100之间的累加和

B.求1~100之间的累加和除以2的商

C.求1~100之间的偶数之和

D.求1~100之间的奇数之和


正确答案:D
解析:分析该段程序的目的,可以看到当A/2与INT(A/2)不等时,就将A的值添加到B中,只有当A为奇数时,A/2与INT(A/2)才不等,因此可以判断本题所给程序的功能是计算1到100中所有奇数之和。因此本题的正确选项是D。

第4题:

有如下程序: SET TALK OFF M=O N=O DO WHILE N>M M-M+N N=N-10 ENDDO ?M RETURN 运行此程序显示M的值( )。

A.0

B.10

C.100

D.99


正确答案:C

第5题:

设有如下程序文件: SET TALK OFF CLEAR DIMENSION a(2,3) i=1 DO WHILE i<=2 j=1 DO WHILE j<=3 a(i,)=i+j ??a(i,j) j=j+1 ENDDO ? i=i+1 ENDDO SET TALK ON RETURN 执行此程序,程序的运行结果为

A.2 3 4 3 4 5

B.1 2 3 3 4 5

C.1 2 3 2 4 6

D.2 3 4 4 5 6


正确答案:A
解析:该程序首先定义一个二维数组a(2,3),然后利用DOWHILE-ENDDO嵌套循环将每个数组元素赋值,即将该数组元素的行下标和列下标之和赋值给对应元素。

第6题:

给出以下程序: SET TALK OFF X=0 Y=0 DO WHILE X<100 X=X+1 IF INT(X/2)=X/2 LOOP ELSE Y=Y+X ENDIF ENDDO ?"Y=",Y RETURN 运行结果为 ______。

A.Y=500

B.Y=1500

C.Y=2000

D.Y=2500


正确答案:D
解析:程序所要完成的操作是求1到100之间的奇数和。程序首先将X,Y赋值为O,然后用DOWHILE循环来依次判断1-100中的数字,INT(X/2)=)X/2用于判断此数是否为偶数,如果为偶数,执行LOOP返回到DOWHILE判断循环条件,条件满足,使X加1重新判断是否为偶数,如果不是,表示此数为奇数,执行ELSE后面的语句,将其累加到Y中。

第7题:

以下程序的运行结果是【 】。

SET TALK OFF

X;[23+17]

?X


正确答案:23+17
23+17

第8题:

执行下列程序:

SET TALK OFF

STORE 0 TO X,Y

DO WHILE X<6

X=X+Y

Y=Y+2

ENDDO

? X,Y

SET TALK ON

RETURN

在屏幕上显示的输出结果是( )。

A.88

B.68

C.46

D.66


正确答案:D
解析:DO WHILE-ENDDO语句的格式为:
DO WHILE条件>
命令序列>
ENDDO
执行该语句时,先判断DO WHILE处的循环条件是否成立,如果条件为真,则执行DO WHILE与ENDDO之间的命令序列>(循环体)。当执行到ENDDO时,返回到DO WHILE,再次判断循环条件是否为真,以确定是否再次执行循环体。若条件为假,则结束该循环语句,执行ENDDO后面的语句。
先将0赋给两个变量X和Y,使用一个DO WHILE循环语句来操作,判断条件是变量X是否小于6,如果大于或等于6,则退出循环,否则执行循环体,执行X=X+Y,X=0,再执行Y=Y+2后,Y=2,重复此循环体的操作。题干中的循环步骤及结果见下表。

X、Y最终的显示值都是6。

第9题:

执行如下程序,最后S的显示值为 SET TALK OFF S=0 i=5 X=11 DO WHILE S<=x S=S +i I = I +l ENDDO ?s SET TALK ON

A.5

B.11

C.18

D.26


正确答案:C
解析:该循环语句中,变量s和i每次执行循环后值的变化如下:
  s值  i值
  第一次循环  5  6
  第二次循环  11  7
  第三次循环  18  8
  程序在第四次执行循环时,因条件(18<;11)为假而退出循环。

第10题:

有如下一段程序: SET TALK OFF AY="Hello World!" BY="X" CY=ASC(BY)+1 DY=30 EY=CHR(DY*2+5)+CHR(CY) EY=&EY ?"&EY." SET TALK ON RETURN 执行该程序后,屏幕显示的结果为

A.AY

B.BY

C.Hello World!

D.程序出错


正确答案:C
解析:通过将题目中的程序拷贝到命令框中执行,可以知道其执行结果为HelloWorld!。实际上它的执行过程如下:首先通过第1,2,3,4,5,6行程序的执行,可以得到EY的值为“AY”,然后第七行通过宏替换可以得到EY的值为“HelloWorld!”,然后回显即可以得到结果。

更多相关问题