
| 出版日期:2003-02-24 总期号:506 本年期号:06 |
|
全国计算机二级笔试QB试题选析
(2002年9月)(一) 《中国电脑教育报》杭大庆 (1)有如下程序 a=5 b=6 PRINT a〉b OR b MOD 2=0 END 运行后的输出结果是 (A)-1(B)0(C)1(D)2 解析:PRINT a〉b OR b MOD 2=0是一个PRINT语句,因而只需判断a〉b OR b MOD 2=0这个表达式的值的真假。而OR右边的表达式 b mod 2=0为真。故整个表达式的值为真。而“真”在QBASIC语言中用“-1”表示。所以选择A。 (2) 有如下程序 FOR x=1 TO 4 a=0 FOR y=1 TO x+1 a=a+1 NEXT y PRINT a; NEXT x END 运行后的输出结果是: (A)1 2 3 4(B)2 3 4 5(C)3 4 5 6(D)4 5 6 7 解析:外层每循环一次,它的内层要全部循环完。对于此题,外层每开始循环一次,给a赋初始值0。内层每循环一次,a自增1。因此,只要知道执行每一次外循环时,内循环执行几次,就能得出a的值了。因此,选择B。 (3)有如下程序 x=1 n=3 DO k=k+1 n=k+n x=x*2 LOOP UNTIL x〉n PRINT n;x END 运行后的输出结果是: (A)13 16(B)6 8(C)18 32(D)24 64 解析:Do……loop until循环是当循环条件为真时,退出循环。 第一次循环,k=k+1=0+1=1,n=k+n=1+3=4,x=1*2=2;循环条件x〉n为假; 第二次循环,k=k+1=1+1=2,n=k+n=2+4=6,x=2*2=4;循环条件x〉n为假; 第三次循环,k=k+1=2+1=3,n=k+n=3+6=9,x=4*2=8;循环条件x〉n为假; 第四次循环,k=k+1=3+1=4,n=k+n=4+9=13,x=8*2=16;循环条件x〉n为真; 循环结束时n=13,x=16。因此选择A (4)有如下程序 m$="#" FOR k=3 TO 1 STEP -1 x$=STRING$(k,"*") PRINT m$;x$ m$=m$+m$ NEXT k END 运行后的输出结果是: (A)#* (B)#* (C)#*** (D)#*** ##** ##** ##** ##** ###*** ####*** ###* ####* 解析:本程序中,循环体共执行3次。 当执行第一次循环时,x$=STRING$(k, "*")=STRING$(3,"*")="***",输出#***,然后,m$=m$+m$="##"; 当执行第二次循环时,x$=STRING$(k,"*")=STRING$(2,"*")="**",输出##**, 然后,m$=m$+m$="####"; 当执行第三次循环时,x$=STRING$(k,"*")=STRING$(1,"*")="*",输出####*然后,退出循环。 因此选择D。 (5)有如下程序 a=1 DO WHILE a〈10 a=a+2 b=b+a*a LOOP PRINT a,b END 运行后输出的结果是: (A)9 25(B)9 164(C)11 285(D)11 3 解析:Do while……loop循环是当循环条件为真时,执行循环体。 本程序开始时, a=1,循环条件为真,执行第一次循环体。A=a+2=1+2=3,b=b+a*a=0+3*3=9; a=3,循环条件为真,执行第二次循环体。A=a+2=3+2=5,b=b+a*a=9+5*5=34; a=5,循环条件为真,执行第三次循环体。A=a+2=5+2=7,b=b+a*a=34+7*7=83; a=7,循环条件为真,执行第四次循环体。A=a+2=7+2=9,b=b+a*a=83+81=164; a=9,循环条件为真,执行第五次循环体。A=a+2=9+2=11,b=b+a*a=164+121=285; a=11,循环条件为假,退出循环。此时,a=11,b=285,所以选择A。(未完待续) |
|||||||||||||||||||||||