| 您的位置: 洪恩在线 -> 继续教育 -> 计算机考级 |
|
我要发言
|
1996年4月全国计算机等级考试二级笔试试卷基础知识和Pascal语言程序设计
|
|||||||||||||
|
10.设A盘的目录结构为(画[]为的目录) A[、]根目录 ┌──┼──┬──┬───┬───┐ ABC [D1]DX.C Q.DAT [D2]A.FOR ┌──┼───┬─┐┌──┼───┐ B.PAS [D3]Y.BAS A.C A1.C [D4]XYZ.C ┌──┬─┴─┬──┐ QR.C NA.C A.TXT B.C 如果当前盘为C盘,A盘的当前目录为、D2,则下列对A盘上文件QR.C的指定中,合法的是_____。 A)、D2、D4、QR.C B)D4、QR.C C)A:D4、QR.C D)A:D2、D4、QR.C 11.为了将A盘当前目录(不是根目录)中所有扩展名为。C的文件同名复制到A盘的目录、USER中,正确的命令是_____。 A)COPY A:*。C USER、*。C B)COPY A:*。C A:、USER C)COPY A:*。C A:USER、D)COPY A:*。C A:USER、*。C 12.为了在屏幕上一次显示当前盘当前目录下的所有扩展名为。TXT的文件内容,下列命令中正确的是______。 A)TYPE *。TXT B)TYPE *。TXT CON C)COPY *。TXT》CON D)COPY *。TXT CON 13.设当前盘为A盘,为了将当前盘当前目录下的文件AB1.TXT连接在C盘根目录下的文件XYZ.TXT的后面,正确的命令是_____。 A)COPY C:、XYZ.TXTAB1.TXT B)COPY AB1.TXT》》C:、XYZ.TXT C)TYPE AB1.TXT》C:、XYZ.TXT D)COPY AB1.TXTC:、XYZ.TXT》C:XYZ.TXT 14.设A盘为启动盘,其目录结构为(画[]的为目录) [、]根目录 │ ┌─────┴─────┐ [DOS]COMMAND.COM ┌───┴───┐ [USER]AUTOEXEC.BAT 其中文件AUTOEXEC.BAT的内容为: MD 、XYZ CD 、DOS、USER 则由A盘启动成功后,A盘的当前目录是____。 A)、DOS、USER B)、XYZ C)、D)、DOS |
|
15.下列DOS命令中内部命令是_____。 A)COMP B)PATH C)PRINT D)FORMAT 16.设当前盘为C 盘,所用的所有软盘已格式化且容量相同,则下列DOS 命令中错误的 是______。 A)DISKCOPY A:C:B)DISKCOPY A:: C)COPY A:*。*D)COPY A:*。*C: 17.下列DOS命令中,有错误的是_____。 A)TYPE AAB.FOR》PRN B)TYPE ?AB.FOR C)COPY *。:C PRN D)COPY CON PRN 18.设当前盘为C盘,在当前目录下有全部的DOS系统文件与批处理命令文件AB.BAT,且该批处理命令文件的内容为: FORMAT A:/4 MD 、XYZ CD 、XYZ RD 、XYZ MD 、XYZ 如果在1.2M 软盘驱动器A 中插入一张360K 容量的软盘片,执行批处理命令文件 AB.BAT后,结果A盘的目录结构是_____。 A)根目录B)根目录─子目录XYZ─子目录XYZ C)根目录───┬──子目录XYZ D)根目录─子目录XYZ └──子目录XYZ 19.下列带有通配符的文件名中,能代表文件ABC.FOR的是_____。 A)*BC.?B)A?。*C)?BC.*D)?。? 20.设当前盘为C盘,C盘上含有子目录、DOS,A盘为只有根目录的启动盘(根目录下只有三个DOS系统文件与扩展名为。C的文件)。下列命令组中的两个命令从效果上可以认为等价的是_____。 A)DEL 、DOS与RD、DOS B)FORMAT A:与DEL A:*。* C)FORMAT A:/S与DEL A:*。?D)COPY A:F1 F2与REN A:F1 F2 21.已知TYPE color=(red,yellow,blue);则下列类型定义中不合法的是 A)TYPE t1=red.。blue;B)TYPE t2=red.。yellow; C)TYPE tt33=red.。red;D)TYPE t4=blue.。red; 22.下列表达式中运算结果为False的是 A)'X'IN ['A','C'……'E','G'] |
|
B)['A','B','C']=['C','B','A'] C)['A']《》['B'] D)['A','B','C']》=['A','B'] 23.设a和SIN3均为整型变量,下面函数调用正确的是 A)Pred(23.5)B)Abs(SIN3) C)Trunc(True)D)Eof(a) 24.已知有如下说明: VAR a,b:INTEGER; c,d:REAL; 下面赋值语句合法的是 A)C:=AB B)A:=C;C)A:=AB/C;D)B:=A DIV D 25.设有变量说明:VAR AA:(C,G,A,J,K);则函数SUCC(A)的取值是 A)G B)3 C)J D)B 26.下面正确的说明是 A)TYPE letter=(A.。E); VAR tt:ARRAY[letter]OF Real; B)TYPE letter=(A,B,C,D,E); VAR tt:ARRAY[letter]OF Real; C)VAR tt:ARRAY[A.。E]OF Real; D)VAR tt:ARRAY[A,B,C,D,E]OF Real; 27.设有以下说明: VAR i1,i2,i3:Integer; b1,b2,b3:Boolean; 则下列中合法的赋值语句是 A)i3:=i1/i2 B)b1:=i1 AND i2 C)b2:=i1《2 D)b3:=i1《i2《i3 28.设有程序 PROGRAM exam(Input,Output); CAR ch1,ch2,ch3:Char; BEGIN Readln(ch1,ch2;ch3); Readln(ch1,ch2); Readln(ch1); Writeln(ch1,ch2,ch3) END. 运行以上程序时,若输入为: abc《CR》 DEF GHI 其中为回车符,则输出是 A)abc B)gec C)ceg D)adg 29.表达式True AND NOT Odd(——202)《(7——3《=4)的值是 A)True B)False C)0 D)1 30.当同时满足A《B和c=d时把Y赋给X,而当A》=B时把n赋给m,应选用的程序段是 a)if a《b then b)if (a《b)and (c=d) if c=d then x:=y then x:=y else m:=n else m:=n c)if a《b then d)if a《b then begin begin |
|
if c=d then x:=y if c=d then x:=y else m:=n end end else m:=n 31.可以用DOS的TYPE命令直接在终端上显示的PASCAL文件是 A)FILE类型文件B)各种类型的顺序存取文件 C)各种类型的直接存取文件D)TEXT类型文件 32.设有以下程度段: BEGIN a:=0; FOR i:=7 DOWTO 2 DO CASE i OF 1,2:a:=a1; 3,4:a:=a2; 5,6:; 7,8:a:=a3 END; Writeln('a=',a:1) END. 若变量均已说明,则程序运行后的输出是 A)a=8 B)12 C)a=6 D)0 33.有下面程主序运行后的输出是 IF(K《=10》AND(K》0)THEN IF K》5 THEN IF K《8 THEN x:=0 ELSE x:=1 ELSE IF k》2 THEN x:=3 ELSE x:=4 设K为整型变量,K取下列哪组中的任意一个值时,X都可以被赋值为3 A)2,3,4 B)3,4,5 C)4,5,6 D)5,6,7 34.设有下面程序段 y:=2; WHILE y《=32 DO y:=yy; 则程序段执行循环体的次数是 A)2 B)3 C)4 D)5 35.若有以上说明: VAR i:Integer;r:REal;c;CHar; 则下列FOR 循环循中合法的是 A)FOR r:=1.5 TO 4.5 DO Write(r) B)FOR c:='e'DO WNTO 'b'DO Write(C) C)FOR i:=45 TO 5 DO write(i) D)for ii:=1 to 100 do write(ii) 36.能正确输出0.5,1.5,2.5,3.5,4.5这5个实数的循环是 A)i:=0.0; WHILE(i》=0.5)AND (I《=4.5)DO BEGIN Writeln(i:3:1); I:=i1 END B)i:=0.0; WHILE(i》=0.5)OR (I《=4.5)DO BEGIN Writeln(i:3:1); i:=i1 END C)i:=0.5; WHILE(i》=0.5)AND (I《=4.5)DO BEGIN Writeln(i:3:1); i:=i1 END D)i:=0.5; WHILE(i》=0.5)AND (i《=4.5)DO BEGIN Writeln(i:3:1); i:=i1 END |
|
37.设4个字节存放一个实型数,若有说明: VAR A:ARRAY[1.。10]OF ARRAY[BOOLEAN]OF REAL; 则数组A需占用的存储空间是 A)10 字节B)20字节C)80字节D)40字节 38.假定Y是集合变量,变量X的类型与Y的基本类型相同,则下列表达式中错误的是 A)[X]IN y B)y——[X]C)[X][]*Y D)y《=[X] 39.设有以下说明: VAR i1,i2:INTEGER; R1,R2;REAL; PROCEDURE p(a:REAL;VAR b;INTEGER); 假定变量度I1,I2,R1,R2,均已赋值,下列中正确的过程调用是 A)p(i1M,i2);B)P(r1,r2);C)P(i2,r1);D)P(r2,r1); 40.设有以下程序: PROGRAM EXAM(INPUT,OUTPUT); VAR X,Y:INTEGER; PROCEDURE A; VAR X:INTEGER; BEGIN WRITELN(X:1,',',Y:1) END BEGIN X:=1;Y:=2; A END 则程序运行后的输出应是 A)1,2 B)22683,11(两个数都是随机数) C)22682,2(第一个是随机数)D)1,22682(第二个数是随机数) 41.有下列程序 PROGRAM AA; VAR N:INTEGER; B,:REAL; BEGIN T:=1;B:=1;N:=2; REPEAT B:=B*N; T:=TB; N:=N1 UNTIL N》19 END 该程序运行后,变量T中的值是下列哪个公式的结果 A)20!B)19! C)1!2-…19!D)1!2-…20! 42.设有过程说明: PROCEDURE P(X,Y:REAL;VAR Z:REAL); BEGIN …… END 并设A,B,C为实型量且已有确定的值,则下面过程调用正确的是 A)P(AB,A——B,AB)B)P(A,A MOD B,C) C)P(ROUND(A),C,B)D)P(C,SIN(B),10,5) 43.下面给出一个求意性程序: PROGRAM P(……); PROCEDURE P1(X:PREL):FORWARD; PROCEDURE P2(I:INTEGER); VAR A:REAL; |
|
BEGIN P1(3.0);{调用1} A:=F(5)2。1 {调用2} END; PROCEDURE P1; VAR B:REAL; BEGIN P1(5.0);{调用3} …… END; FUNCTION F(Y:INTEGER):REAL; BEGIN P1(21);{调用4} …… END; BEGIN …… END 则下列程序中出现的过程或函数调用哪个是不正确的? A)调用1 P1(3.0)B)调用2 A:=F(5)2.1; C)调用3 P1(5.0)D)调用不着4 P1(21); 44.下列没有错误的程序段是 A)TYPE TOCP^CHAR;B)TYPE TOCP=^CHAR; VAR CHARP:TOCP;VAR CHARP:TOCP; BEGIN BEGIN CHARP:='A';NEW(CHARP); WRITELN(CHARP);IF ORD(CHARP)》10 THEN WRITELN('AAA'); C)TYPE TORP=^REAL;D)TYPE TOIP=^INTEGER; VAR ONE,TWO:TORP;VAR A,B:TOIP; BEGIN BEGIN NEW(ONE);NEW(A);NEW(B); TWO:=ONE5;A^:=5;B^:=A^5; 45.若有以下程序: PROGRAM AAA(INPUT,OUTPUT); VAR P1,P2,P3:^INTEGER; BEGIN NEW(P1); NEW(P2); P1^:=563 MOD 10ROUND(2.56); P2^:=P1^DIV 32; P3:=P1;P1:=P2;P2:=P3; WRITELN(P1^:2,P2^:2,P3^:2) END 则程序运行后的输出是 A)6 6 6 B)4 6 6 C)6 4 6 D)6 6 4 46.已知函数说明如下: FUNCTION F(N:INTEGER):INTEGER; BEGIN IF N=0 THEN F:=0 ELSE IF N》0 THEN F:(N——2) ELSE F:(N3) END 则函数调用F(5)的值是 A)0 B)1 C)——1 D)——2 47.若有以下说明: VAR A,B:INTEGER; PROCEDURE SWAP(X:INTEGER;VAR Y:INTEGER); VAR T:INTEGER: BEGIN T:=X;X:=Y;Y:T END; 并有以下语句: A:=10;B:=20; SWAP(A,B); |
|
WRITELN('A=',A:2,',B:2) 则程序运行后输出结果是 A)A=10,B=20 B)A=20,B=10 C)A=10,B=10 D)A=20,B=20 48.有下面程序段 FOR I:=1 TO 3 DO BEGIN FOR J:=1 TO 3 DO BEGIN IF I=3 THEN A[I,J]:=A[I——1,A[I——1,J]]1 ELSE A[I,J]=J; WRITE(A[I,J]:2) END; WRITELN END 该程序的执行结果是 A)1 1 1 B)1 2 3 C)1 2 3 D)1 2 3 2 2 2 1 2 3 1 2 3 1 2 3 3 3 3 1 2 3 2 4 6 2 3 4 49.有下面程序: PROGRAM AA(OUTPUT); VAR X,Y,Z:INTEGER; PROCEDURE P(X,Y:INTEGER;VAR Z:INTEGER); BEGIN Z:=Y——X——Z END BEGIN X:=5;Y:=7;Z:=4; P(7,XYZ,X); WRITELN(X;2,Y:2,Z:2) END 该程序的运行结果是 A)7 7 4 B)4 7 4 C)5 7 4 D)5 7 ——2 50.PROGRAM MATRIX(INPUT,OUTPUT); VAR I,J,MAX,M,N:INTEGER; A:ARRAY[1。。5,1。。5]OF INTEGER; BEGIN WRITELN('INPUT 5*5 MATRIX:'); FOR I:=1 TO 5 DO BEGIN FOR J:=1 TO 5 DO READ(A[I,J]); READLN END; MAX:=A[1,1];M:=1;N:=1; FOR I:=1 TO 5 DO IF(I=J)OR (IJ=6)THEN IF A[I,J]》MAX THEN BEGIN MAX:=A[I,J];M:=I;N:=J; END; WRITELN('MAX=',MAX); WRITELN('M=',M,'N=',N) END 以上程序的功能是 A)求5阶方阵中两条对角线上元素的最大值及其位置 B)求5阶方阵中主对角线上元素的最大值及其位置 C)求5阶方阵中所有元素的最大值及其位置 D)求5阶方阵中所有元素的最小值及位置 二.填空题(每空2分,共40分) |
|
请将每空的正确答案写在答题卡1~20序号的横线上,答在试劂不得分。 (6)已知类型说明为T1=SET OF'A'。。'Z';过程WRITESET将集合A中的元素以下面例子的方式输出 例:若A=['A','Z','C','M','H'] 则输出A=[A,C,H,M,Z] PROCEDURE WRITESET(A:T1); VAR CH:CHAR; BEGIN ——; FOR CH:='A'TO 'Z'DO IF_______________IN A THEN WRITE(CH,','); WRITELN(']') END; (7)已知有如下类型说明: TYPE DATE=RECORD Y :INTEGER; MONTH:1。。12 DAY:1。。31 END; 并有函数LEAP能够检查年份Y否是闰年,右为闰年(闰年的2月有29天),函数LEAP的返回值为TURE;否则,返回值为FALSE。函数的详细内容没有给出,函数首部为 FUNCTION LEAP(Y:INTEGER):BOOLEAN; 下面函数CHECKDATE的作用是检查变量D中的日期是否是合理,若不合理(即出现了不可能的日期),则显示'ERROR DATE!,函数返回值为FALSE;否则,函数返回值为TRUE。 FUNCTION CHECKDATE(D:DATE):BOOLEAN; VAR FLAG:BOOLEAN; BEGIN FLAG:=TRUE; —— BEGIN CASE MONTH OF 4,6,9,11;IF DAY》30 THEN FLAG:=FALSE; :2 :IF (DAY》29)OR (DAY》28)_________THEN FLAG:=FALSE END END; IF NOT FLAG THEN WRITELN('ERROR DATE!'); CHECKDATE:=FLAG END (8)下面的程序可以输出右边图示结果,请填空完成。0 0 0 1 0 0 0 0 0 1 0 1 0 0 PROGRAM P5(UTPUT);0 1 0 0 0 1 0 TYPE 1 0 0 0 0 0 1 ARR=ARRAY[1.。4,1.。7]OF INTEGER; VAR A:ARR; X,Y:INTEGER; BEGIN FOR X:=1 TO 4 DO FOR Y:=1 TO 7 DO IF(__________=5)OR (__________=3)THEN |
|
A[X,Y]:=1 ELSE A[X,Y]:=0; FOR X:=1 TO 4 DO BEGIN FOR Y:=1 TO 7 DO WRITE(A[X,Y]:3); WRITELN END END (9)函数FINDSECOND返回数组A中第二大的数(第二大数可以与最大数相等),类型T1为: T1=ARRAY[1.。10]OF INTEGER; FUNCTION FINDSECOND(A:T1);INTEGER; VAR B1,B2,K:INTEGER; BEGIN B1:=A[1];B2:=A[2]; IF B1A则以N——A作为新的任意正整数(例如32),重复步骤1)。若N=A,则结束。程序中的函数FIND返回小于或等于N的最大的FAIBONACCI数 PROGRAM P1(INPUT,OUTPUT); VAR N:INTEGER; FUNCTION FIND(N:INTEGER);INTEGER; VAR A,B,C:INTEGER; BEGIN A:=1;B:=1; REPEAT C:=__________; A:=B;B:=C; UNTIL B》=N; IF B=N THEN FIND:=__________ ELSE FIND:=__________ END; PROCEDURE P(N:INTEGER); VAR A:INTEGER; BEGIN A:=FIND(N); WRITE('',A:4); IF A《N THEN P(________) END; BEGIN READLN(N); WRITE(N:5,'='); P(N); WRITELN END 1996年4月全国计算机等级考试二级笔试试卷 基础知训和PASCAL语言程序设计 答案及评分标准 一.选择题(1~40题每题1分,41~50题每题2分,共60分) 1.C 2.A 3.B 4.D 5.D 6.A 7.C 8.B 9.D 10.C 11.B 12.D 13.A 14.C 15.B 16.A 17.B 18.A 19.C 20.C 21.D 22.A 23.B 24.A 25.C 26.B 27.C 28.B 29.B 30.D 31.D 32.A 33.B 34.D 35.B 36.C 37.C 38.A 39.A 40.C 41.C 42。C 43。B 44。D 45。B 46.A 47。C 48。D 49。B 50。A 二.填空题(每空2分,共40分) |
|
(所有字母都允许大。小写或大小写混合) 1.外部 2.DIR ??C*。* 3.A:、X、Y、W、QR.C 4.64 5.92 6.WRITE('A=[') 用WRITELN而未用WRITE者扣1分 输出字串'A=['不正确者扣1分未用输出语句者不给分'] 7.CH 基填[CH]给1分 8.WITH D DO 9.AND NOT LEAP(Y)或AND(LEAP(Y)=FALSE)或AND(NOT LEAP(Y)) 若填AND LEAP(Y)=FALSE给1分 若填Y写为D。Y而其它全对,则给1分 10.XY或YX 11.Y——X或——XY 12.B2:=B1 13.A[K]》B2 或A[K]》=B2 或NOT(A[K]《B2)或NOT(A[K]《=B2) 14.Q 15.P或P; 16.P或Q或P;或Q; 17.AB 或BA 18.B或C或N 若填B;或C;或N;则给1分 19.A 或A; 20.N——A |
| 【关闭窗口】 | |