2000年4月二级笔试试题BASIC

全国等级考试资料网 2022-10-16 05:20:10 89
基础部分和QBASIC语言程序设计(考试时间120分钟,满分100分)

一、选择题((1)--(40)每小题1分, (41)--(50)每小题2分, 共60分)
下列各题 A) 、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项在
答题卡相应位置上涂黑,答在试卷上不得分。
(1) 下列述叙中正确的是
A) 显示器和打印机都是输出设备 B) 显示器只能显示字符
C) 通常的彩色显示器都有7种颜色 D) 打印机只能打印字符和表格
(2) 微型计算机中运算器的主要功能是进行
A) 算术运算 B) 逻辑运算 C) 算术和逻辑运算 D) 初等函数运算
(3) COMMAND。COM是DOS系统的最外层模块,通常称之为
A) 引导程序 B) 输入输出系统 C) 命令处理系统 D) 文件管理系统
(4) 电子邮件是
A)网络信息检索服务
B)通过Web网页发布的公告信息
C)通过网络实时交互的信息传递方式
D)一种利用网络交换信息的非交互式服务
(5) 和十进制数225相等的二进制数是
A) 11101110 B) 11111110 C) 10000000 D) 11111111
(6) 下列叙述中正确的是
A) 指令由操作数和操作码两部分组成
B) 常用参数xxMB表示计算机的速度
C) 计算机的一个字长总是等于两个字节
D) 计算机语言是完成某一任务的指令集
(7) 计算机的内存储器比外存储器
A) 价格便宜 B) 存储容量大 C) 读写速度快 D) 读写速度慢
(8) 设当前盘为C盘,执行DOS命令"COPY B:A.TXT PRN"之后,结果是
A) B盘上的A.TXT文件被复制到C盘的PRN文件
B) 屏幕上显示B盘上的A.TXT文件内容
C) B盘上的A.TXT文件内容在打印机上输出
D) B盘上的A.TXT文件被复制到B盘上的PRN文件
(9) 要将当前盘当前目录下的两个文件X1.TXT和B1.TXT连接起来之后存入B盘当
前目录下并且命名为Z.TXT,无论B盘当前目录是什么,完成这件任务可以使
用的命令是
A) COPY A:X1.TXT+C:B1.TXT Z.TXT
B) COPY X1.TXT+C:WSB1.TXT B:.TXT
C) COPY A:X1.TXT+C:WSB1.TXT
D) COPY X1.TXT+B1.TXT B:Z.TXT
(10) 下列四组DOS命令中,功能等价的一组是
A) COPY A:*.* B:与DISKCOPY A: B:
B) COPY ABC.TXT+XYZ.TXT 与TYPE XYZ.TXTABC.TXT
C) COPY ABC.TXT+XYZ.TXT与COPY XYZ.TXT+ABC.TXT
D) TYPE *.FORCON与COPY *.FOR CON
(11) 设当前目录为D:BB,现要把D:AA目录下首字符是A的文本文件全部删除,
应该使用命令
A) DEL A*.TXT B) DEL AAA.TXT
C) DEL AAA*.TXT D) DEL AAA?.TXT
(12) 在Windows中,启动应用程序的正确方法是
A) 用鼠标指向该应用程序图标
B) 将该应用程序窗口最小化成图标
B) 将该应用程序窗口还原
D) 用鼠标双击该应用程序图标
(13) 在Windows中,终止应用程序执行的正确方法是
A) 将该应用程序窗口最小化成图标
B) 用鼠标双击应用程序窗口右上角的还原按钮
C) 用鼠标双击应用程序窗口中的标题栏
D) 用鼠标双击应用程序窗口左上角的控制菜单框
(14) 在微机系统中,对输入输出设备进行管理的基本程序模块(BIOS)存放在
A) RAM中 B) ROM中 C) 硬盘中 D) 寄存器中
(15) 使计算机病毒传播范围最广的媒介是
A) 硬磁盘 B) 软磁盘 C) 内部存储器 D) 互联网
(16) 在QBASIC的编辑环境中,用Copy复制串后,可以粘贴该串的命令是
A) Ctrl+V B) Paste C) Cut D) Alt+F
(17) 在QBASIC中,常量987654.987654#的数据类型是
A) 整型 B) 实型 C) 双精度型 D) 长整型
(18) 在下列四个QBASIC表达式中,非法的表达式是
A) a=b+c B) a=(b=c)
C) a+bc D) a$b+c+10
(19) QBASIC表达式(LOG(1)+ABS(-1)+INT(RND(1))的值是
A) -1 B) 1 C) 0 D) 2
(20) 在QBASIC中表达式EXP(-8)+SIN(-8)+SQR(8)的类型是
A) 算术表达式 B) 关系表达式 C) 错误的表达式 D) 逻辑表达式
(21) 在QBASIC中,下面的四个语句中存在非法调用错误的是
A) x=SGN(0) B) x=FIX(0) C) x=LOG(0) D) x=ABS(0)
(22) 定义有10个单精度实型数的数组,正确的语句是
A) DIM a(9) AS SINGLE B) OPTION BASE 1:DIM a(9)
C) DIM a#(10) D) DIM a(10) AS SINGLE
(23) 下面四个语句中,能打印显示20*30字样的是
A) PRINT "20*30"
B) PRINT 20*30
C) PRINT CHR$(20)+"*"+CHR$(30)
D) PRINT VAL("20")*VAL("30")
(24) 下面四个语句中,正确的单行自定义函数语句是
A) fna(x,y)=a*x+b*y
B) DEF fna(x,y)=a*x+b*y END DEF
C) DEF fna(x,y)=a*x+b*y END
D) DEF fna(x,y)=a*x+b*y
(25) 要使变量x赋值为1到100间(含1,不含100)的一个随机整数,正面语句正确的是
A) x=INT(100*RND) B) x=INT(101*RND)
C) x=1+INT(100*RND) D) x=1+INT(99*RND)
(26) 有如下一组程序语句
DIM sum AS INTEGER
sum%=19
sum=2.32
PRINT sum%; sum
运行后的输出结果是
A) 19 2.32 B) 19 19 C) 2.32 2.32 D) 2 2
(27) 有如下一组程序语句
DEFSTR C-F
c$="123"
d="456"
PRINT c+d$
运行后的输出结果是
A) 123456 B) "123456" C) 123+"456" D) 显示出错信息
(28) 有如下一组程序语句
CONST alpha=90
alpha=100
alpha=90
PRINT alpha+100
运行后的输出结果是
A) 190 B) 200 C) 90 D) 显示出错信息
(29) 有如下程序
FOR i=1 TO 3
FOR j=1 TO i
FOR k=j TO 3
a=a+1
NEXT k
NEXT j
NEXT i
PRINT a
END
在运行后输出a的值是
A) 3 B) 14 C) 9 D) 21
(30) 有如下程序
INPUT k
IF kIF kIF kIF ka:PRINT k;a
运行时从键盘输入3,输出的结果是
A) 3 1 B) 3 4 3 C) 3 4 3 2 D) 3 4 3 2 1
(31) 有如下程序
a=3
IF aPRINT 3;
END IF
IF aPRINT 4;
END IF
IF aPRINT 5;
END IF
IF aPRINT 6;
END IF
PRINT
END
运行后输出结果是
A) 3 B) 3 4 C) 3 4 5 D) 3 4 5 6
(32) 有如下程序
a=1
DO WHILE aa=2*a
b=b+a*a+1
LOOP
PRINT b
END
运行后输出结果是
A) 12 B) 32 C) 97 D) 344
(33) 有如下程序
a$="AaBbCcDdEe":b$="12345"
FOR j=1 to 5 STEP 2
PRINT MID$(a$,j,1)+MID$(b$,(j+1)/2,1);
NEXT j
END
A) A1B2C3 B) AaB123 C) a1b2c3 D) A1a2B3
(34) 有如下程序
INPUT "Enter a value of t:"; t
SELECT CASE t
CASE ISs=t+1
CASE ISs=t+2
CASE ISs=t+3
CASE ELSE
s=t+4
END SELECT
PRINT t; s
END
运行时,从键盘输入3,输出的结果是
A) 3 4 B) 3 5 C) 3 6 D) 3 7
(35) 有如下程序
a$="France"
m$=MID$(a$,3,2)
FOR j=1 to 5
READ b$
e=INSTR(b$,m$)
s=s+e
NEXT j
PRINT s
DATA Iran,China,Japan,Afghanistan,Guyana
END
运行后输出结果是
A) 5 B) 11 C) 16 D) 21
(36) 有如下程序
FOR j=1 TO 10
x=2*j-1
IF x/3=x3 OR x/5=x5 THEN s=s+x
NEXT j
PRINT "s=";s
END
运行后输出S的值是
A) 27 B) 15 C) 32 D) 20
(37) 有如下程序
sum=0
FOR k=1 TO 10
FOR k=10 THEN
ELSE
sum=sum+k
END IF
NEXT k
PRINT sum
END
运行后输出的结果是
A) 10 B) 55 C) 45 D) 36
(38) 有如下程序
a$="Flying": b$="IS": c$="funny!"
PRINT a$ +""+LCASE$(b$)+""+UCASE$(c$)
END
运行后输出的结果是
A) Flying IS funny B) Flying FUNNY!
C) Flying IS FUNNY! D) FLYING IS FUNNY!
(39) 有如下程序
j=0: n=0
DO WHILE nj=(j+1)*(j+2)
n=n+1
LOOP
PRINT j; n
END
运行后输出的结果是
A) 0 1 B) 182 3 C) 30 4 D) 3 3
(40) 有如下程序
FOR j=5 TO 3 STEP -1
GOSUB s:
m=m+n
NEXT j
PRINT m; n
END
s:n=1+2*n
RETURN
运行后输出的是
A) 12 6 B) 11 7 C) 6 6 D) 15 9
(41) 有如下程序
DIM a(10)
FOR j=0 TO 20 STEP 5
READ a(1)
NEXT j
PRINT a(1)+a(2)+a(3)
DATA 1, 2, 3, 4, 5
END
运行后输出的是
A) 5 B) 6 C) 1 D) 显示出错信息
(42) 有如下程序
j=4
FOR k=10 TO 6 STEP -1
READ a(j)
j=j+1
NEXT k
DATA 9, 7, 5, 3, 1
FOR J=4 TO 8
PRINT a(j);
END
运行时输出的结果是
A) 9 7 5 3 1 B) 1 3 5 7 9
C) 0 0 1 3 5 D) 1 1 1 1 1
(43) 有如下程序
DIM arr(3,3) AS INTEGER
FOR m=1 TO 3
FOR n=1 TO 3
arr(m,n)=(m-1)*3+n
NEXT n
NEXT m
FOR m=2 TO 3
FOR n=1 TO 2
PRINT arr(n,m);
NEXT n
PRINT
NEXT m
END
运行后输出的结果是
A) 2 5 B) 2 3 C) 4 7 D) 4 5
3 6 5 6 5 8 7 8
(44) 有如下程序
n=3
FOR K=3 TO 1 STEP -1
x$=STRING$(n,"$")
PRINT k; x$
n=n-1
NEXT K
END
运行后输出的结果是
A) 3 $$$ B) 1 $ C) 3 $ D) 1 $
2 $$ 2 $$ 2 $$ 2 $$
1 $ 3 $ 1 $$$ 3 $$$
(45) 有如下程序
DECLARE SUB mult(x!,y!)
a=1:b=1
PRINT "A="; a; ",B="; b
CALL mult((a),b)
PRINT "A="; a; ",B="; b
END
SUB mult(x,y)
x=2*x
y=3*y
PRINT "X="; x; ",Y="; y
END SUB
运行后输出的结果是
A) A=1, B=1 B) A=1, B=1 C) A=1, B=1 D) A=1, B=1
X=2, Y=3 X=2, Y=3 X=2, Y=3 X=2, Y=3
A=1, B=1 A=2, B=3 A=1, B=3 A=2, B=1
(46) 有如下程序
sum=0
FOR m=1 TO 3
IF ma=1
ELSEIF ma=2
ELSEIF ma=3
ELSE
a=4
END IF
PRINT a;
sum=sum+a
NEXT m
PRINT sum
END
运行后输出的结果是
A) 3 3 3 9 B) 3 2 1 6 C) 1 1 1 3 D) 1 2 3 6
(47) 在图形模式下,点亮坐标为x,y的象素所用的语句是
A) LOCATE x,y
B) PRESET x,y,5
c) PSET(x,y)
D) POSITION x,y
(48) 画一条长度为20个单位的水平直线, 下面四个程序中哪个是正确的
A) SCREEN 2,0 B) SCREEN 1,0
DRAW (0,0)-(20,0) LINE (0,0)-(0,20)
END END
C) SCREEN 1,0, D) SCREEN 2,0
LINE (0,0)-(20,0) DRAW (0,0)-(0,20)
END END
(49) 有如下程序
A=10:B=10:C=120:D=120
CLS
LINE (A,B)-(C,D),1,B
END
运行后屏幕上显示的是
A) 一个矩形 B) 一条直线
C) 两条直线 D) 屏幕上无图形
(50) 有如下程序
m$="ABC"
n$="abc"
k$=LCASE$(m$)
j$=UCASE$(n$)
PRINT CHR$(ASC(ks+js))
END
运行后输出的结果是
A) abcabc B) ABCABC C) A D) a
二)填空题(每空2分,共40分)
请将每空的正确答案写在答题卡上[1] ̄[20]序号的横线上,答在试卷上不得分。
(1) 计算机网络按通信距离来划分,可分为局域网和广域网。因特网属于 [1] 。
-----
(2) 当前盘是C,确保在D盘的根目录下建立一个子目录USER的一条DOS命令是 [2] 。
-----
(3) 要将当前盘当前目录中所有扩展名为.TXT的文件内容显示在屏幕上的DOS命令
是 [3] 。
-----
(4) DOS命令分为内部命令和外部命令,CHKDSK命令是 [4] 命令。
-----
(5) 在Windows中,为了终止一个应用程序的运行,首先单击该应用程序窗口中的控
制菜单框,然后在控制菜单中单击 [5] 命令。
-----
(6) 数学式2cos2y+e(2x)的QBASIC表达式为 [6] 。(注:e(2x)中的(2x)为上标)
-----
(7) 执行语句 PRINT-719/3 MOD(1-2*3^2)的结果为 [7] 。
-----
(8) 有如下程序
a$="1": b$="2"
c=VAL(a$)+VAL(b$)
d=VAL(a$+b$)
PRINT c+d
END
运行后,输出的值是 [8] 。
-----
(9) 四个字符串"ABC"、"abcd"、"ABCDE"及"af"中的最大者为 [9] 。
-----
(10) 以下程序的功能是将字符串"12345"逆序打印出来。请在 [10] 处将程序补充
------
完整。
DECLARE FUNCTION rev$(a$)
old$="12345"
PRINT old$
PRINT rev$(old$)
END
FUNCTION rev$(new$)
b$=MID$(new$, 1, 1)
IF b$="" THEN
rev$=""
ELSE
rev$=rev$(MID$(new$, 2))+ [10]
------
END IF
END FUNCTION
(11) 有如下程序
multi=1
FOR j=1 TO 6
multi=multi*j
NEXT j
PRINT multi+j
END
运行后的输出是 [11] 。
------
(12) 下面的程序是用选择交换法将n(n小于等于10)个数排为降序,请在 [12] 、
------
[13] 、 [14] 处将程序补充完整。
------ ------
OPTION BASE 1
INPUT "Enter a number: "; n
DIM a(n)
PRINT "data before sorting:"
FOR i=1 TO n
READ a(i): PRINT a(i);
NEXT i
DATA 96,123,-7,39,0.14,4,7,22,42
PRINT
FOR i= [12]
------
FOR j= [13]
------
IF a(k)------
NEXT j
IF ki THEN SWAP a(k),a(i)
NEXT i
PRINT "data after sorting:"
FOR i=1 TO n
PRINT a(i)
NEXT i
PRINT
END
(13) 有如下程序
DECLARE SUB ab(x%, y%)
CALL ab(7.7, 3.3)
END
SUB ab(x%, y%)
x%=x%*2: y%=y%*2
PRINT x%; y%
END SUB
运行后的输出结果是 [15] 。
------
(14) 有如下程序
a$="ABCD"
FOR m=1 TO 4
PRINT TAB(5-m); [16]
------
NEXT m
END
运行后的输出结果如下
D
CD
BCD
ABCD
但程序不完整,请在 [16] 处补充使之完整。
------
(15) 有如下程序
DECLARE SUB p(k,s)
sum=0
FOR j=1 TO 3
CALL P(j,s)
sum=sum+5
NEXT j
PRINT sum
END
SUB p(k,s)
s=1
FOR m=1 TO k
s=s*m
NEXT m
END SUB
运行后输出sum的值是 [17] 。
------
(16) 有如下程序
abc$="The People’s Democratic Republic of Yemen"
m=LEN(abc$)
FOR j=1 TO m
b$=MID$(abc$, j, 1)
IF b$="e" OR b$="o" THEN x=x+1
NEXT j
PRINT x
END
运行后输出x的值是 [18] 。
------
(17) 下面程序的功能是产生100个不同的在-300到300(含-300和300)之间的随机
整数,但程序不完整,请在 [19] 和 [20] 处把程序补充完整。
------ ------
DIM b(100)
FOR j=1 TO 100
DO
IF RNDb(j)=[19]* INT(301 * RND)
flag=1
FOR k=1 TO [20]
IF b(j)=b(k) THEN flag=0
NEXT k
LOOP UNTIL flag=1
PRINT b(j);
NEXT j
END 相关资料

相关阅读