📄 2002年4月全国计算机等级考试二级笔试试卷基础部分和qbasic语言程序设计.txt
字号:
A)1 3 5 7 9 B)0 9 7 5 3
C)0 1 3 5 7 D)9 7 5 3 1
(43)有如下程序
DIM a(3,3) AS INTEGER
FOR m=1 TO 3
FOR n=1 TO 3
a(m-1,n-1)=m+n+1
NEXT n
NEXT m
FOR m=0 TO 2
FOR n=0 TO 2
PRINT a(n,m);
NEXT n
PRINT
NEXT m
END
运行时输出的结果是
A)0 1 2 B)1 2 3 C)1 3 5 D)2 4 6
1 2 3 2 3 4 3 5 7 4 6 8
2 3 4 3 4 5 5 7 9 6 8 10
(44)有如下程序
n=3
FOR K=3 TO 1 STEP -1
x$=STRING$(k,"!")
PRINT n; x$;
n=n-1
NEXT K
END
运行时输出的结果是
A)3!!!2!!1! B)1!2!!3!!! C)3!!2! 1 D)2!!!1!!0!
(45) 有如下程序
DECLARE SUB add(x,y)
x=1:y=1
CALL add((x),(y))
PRINT "x=";x;",y=";y
END
SUB add(x,y)
x=x+y
PRINT "x=";x;",y=";y
END SUB
运行后的输出结果是
A)x=1,y=1 B)x=2,y=1 C)x=1,y=1 D)x=2,y=1
x=2,y=2 x=1,y=1 x=1,y=1 x=2,Y=1
(46) 有如下程序
s=0
FOR m=1 TO 3
IF m<=1 THEN
s=s+1
ELSEIF m<=2 THEN
s=s+2
ELSEIF M<=3 THEN
s=s+3
ELSE
s=s+4
END IF
PRINT s;
sum =sum+m
NEXT m
PRINT sum
END
运行时输出的结果是
A) 1 2 3 6 B) 1 3 6 6 C) 3 3 3 9 D) 6 6 6 6
(47) 在文本模式下,把光标移到第x行的第y个字符所用的语句是
A) LOCATE x,y B) PRESET x,y,5
C) PSET(x,y) D) POSITION x,y
(48) 有以下程序
CLS
SCREEN 13
LINE(20,20)-(120,120),5,BF
END
执行的结果,屏幕上显示
A) 一条直线 B) 一个正方形线框
C) 一个填满某种颜色的正方形块 D) 没有显示
(49) 有如下程序
CLS
SCREEN 1,0
PSET (100,100),1
DRAW "u30;r30;g30"
END
运行后屏幕上显示的是
A) 一个空心矩形 B) 一条折线
C) 一个空心三角形 D) 一个填满某种颜色的三角形块
(50)有如下程序
m$="123"
n$="456"
k$=LCASE$(m$)
j$=UCASE$(n$)
PRINT ASC(k$),ASC(j$)
END
运行时输出的结果是
A) 123 456 B) !@# $%^ C) 49 52 D) 33 36
二、填空题
请将每一个空的正确答案写在答题卡【1】至【20】序号的横线上, 答在试卷上不得分.
(1) 为了要将当前盘目录中的可执行程序ABC.EXE的输出结果存放到当前盘当前目录中的文件OUT.TXT中,则应使用的DOS命令为【1】 。
(2) 计算机网络分为广域网和局域网,因特网属于【2】 。
(3) 要想在当前目录下方便地执行C盘\UCDOS目录中的程序,就应该先执行预设搜索路径的命令,该DOS命令为【3】 。
(4) 要查看当前目录中扩展名为.DAT的所有文件目录,应该使用的DOS 命令为【4】 。
(5) 在Windows环境下,当进行复制操作时,其复制的内容将存放在【5】中
(6) 数学式|3ycos(w+p)|的QBASIC表达式为【6】 。
(7) 表达式INT(1.6)=FIX(1.6)的值为【7】 。
(8) 有如下程序
a$="al":b$="b2"
c=VAL(a$)+VAL(b$)
d=VAL(a$+b$)
PRINT c+d
END
运行后,输出的值是【8】 。
(9) 四个字符串"XY"、"XYZ"、"ab"及"abc"中的最大者为【9】 。
(10) 以下程序的功能是将字符串"abcde"转换为字符串"edcba"并打印出来。请在【10】 处将程序补充完整.
DECLARE FUNCTION rev$(a$)
old$="abcde"
PRINT old$
PRINT rev$(old$)
END
FUNCTION rev$(new$)
b$=MID$(new$,1,1)
IF b$="" THEN
rev$=""
ELSE
rev$=rev$【10】+b$
END IF
END FUNCTION
(11)有如下程序
term=1
FOR j=1 TO 5
term=term*j+term
NEXT j
PRINT term
END
运行后的输出是【11】 。
(12) 数组a中有100个小于10000的整数,下标从1到100。下面的程序采用插入排序算 法把a中所有的数按照升序存入数组b。请在【12】 、【13】 、【14】处填入适当内容将程序补充完整。
OPTION BASE 1
DIM a(100),b(100)
FOR i=1 TO 100
a(i)=INT(10000*RND):PRINT a(i);
NEXT i
PRINT
FOR i=【12】
k=1
FOR j=【13】
IF a(i)>a(j) THEN k=k+1
NEXT j
【14】
NEXT i
FOR i=1 TO 100
PRINT b(i);
NEXT i
PRINT
END
(13) 有如下程序
DECLARE SUB ab(x,y)
a=90:b=36
CALL ab(a,b)
END
SUB ab(x,y)
IF y=0 THEN
PRINT x
ELSE
CALL ab(y,x MOD y)
END IF
END SUB
运行后输出的值是【15】 。
(14) 有如下程序
a$="1234567"
FOR m=1 TO 4
PRINT TAB(5-m); 【16】
NEXT m
END
运行后的输出结果如下
4
345
23456
1234567
但程序不完整,请在【16】处补充使之完整。
(15) 有如下程序,计算从1到10的平方和并输出结果,
sum=【17】
FOR j=1 TO 10
sum=【18】
NEXT j
PRINT sum
END
请在【17】, 【18】处补充使程序完整。
(16) 下面程序的功能是产生100个1到10(含1和10)之间的整数,并把数k(1≤k≤10)的 出现次数记入数组元素a(k),请在【19】及【20】处把程序补充完整。
DIM a(10)
FOR j=1 TO 100
k=INT(【19】*RND)+1
a(k)= 【20】
NEXT j
FOR j=1 TO 10
PRINT a(j);
NEXT j
END
参考答案及评分标准
一、选择题(⑴-(40)题每题1分,(41)-(50)题每题2分,其60分)
(1) D
(2) B
(3) A
(4) A
(5) B
(6) C
(7) B
(8) B
(9) C
(10) C
(11) D
(12) D
(13) C
(14) A
(15) B
(16) B
(17) D
(18) C
(19) B
(20) C
(21) C
(22) A
(23) A
(24) D
(25) A
(26) D
(27) B
(28) D
(29) C
(30) A
(31) C
(32) C
(33) D
(34) B
(35) D
(36) B
(37) C
(38) C
(39) C
(40) A
(41) B
(42) B
(43) B
(44) A
(45) B
(46) B
(47) A
(48) C
(49) C
(50) C
二、填空题答案(每空2分,共40分)
(1) 【1】ABC >OUT.TXT 或者 ABC.EXE>OUT.TXT
(2) 【2】广域网
(3) 【3】PATH C:\UCDOS 或其它等效命令
(4) 【4】DIR *.DAT 或 DIR *.DAT/P 或 DIR *.DAT/W 或带其它参数也可
(5) 【5】剪贴板
(6) 【6】ABS(3*y*COS(w+p))
(7) 【7】-1
(8) 【8】0
(9) 【9】"abc"
(10) 【10】MID$(new$,2)
(11) 【11】720
(12) 【10】1 TO 100
【13】1 TO 100
【14】b(k)=a(i)
(13) 【15】18
(14) 【16】MID$(a$,5-m,2*m-1)
(15) 【17】0
【18】sum+j*j或j*j+sum或sum+j^2 或j^2+sum
(16) 【19】10
【20】a(k)+1
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -