| 您的位置: 洪恩在线 -> 继续教育 -> 计算机考级 |
|
我要发言
|
1998年9月全国计算机等级考试二级笔试试卷全国计算机等级考试二级笔试试卷基础知识和Pascal语言程序设计
|
|||||||||||||
|
(14)设可执行文件ABC.EXE所需要的本该由键盘输入的数据已经按格式存放在文件XYZ中,并要求执行结果放在文件XYZ中输入数据的后面。下列命令中正确的是 A)ABCXYZ B)ABC》XYZ C)ABC《XYZ D)ABC》》XYZ (15)设当前盘中某一目录路径为、A、B、C,当前目录为、A.下列命令中肯定出错的是 A)MD 、A、C B)CD.。C)MD 、A、B、A D)MD 、A、B (16)设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 (17)下列DOS命令中,有错误的是 A)TYPE AAB.FOR》CON B)TYPE ?AB.FOR C)COPY *。C CON D)COPY CON PRN (18)设当前盘为A盘,为了将当前盘当前目录下的文件AB1.TXT连接在C 盘根目录下的文件XYZ.TXT的后面,正确的命令是 A)COPY C:、XYZ.TXTAB1.TXT B)COPY AB1.TXT》》C:XYZ.TZT C)TYPE AB1.TXT》C:、XYZ.TZT D)AB1.TXTC:、XYZ.TXT》C:、XYZ.TXT (19)下列命令中合法的是: A)DISKCOPY A:A:B)DISKCOPY A:C: C)DISKCOPY C:A:D)DISKCOPY C:D: (20)设当前盘中基本目录路径为、A、B、C、D、XU,当前目录为、A.要将根目录下扩展名为。C的所有文件复制到当前目录下,并将扩展名改为。FOR,应使用命令 A)COPY 、*。C *。FOR B)COPY *。C 、A、*。FOR |
|
C)COPY *。FOR 、*。C D)COPY 、A、*。C *。FOR (21)PASCAL编译程序是 A)把PASCAL源程序转换成可运行的EXE文件的程序 B)把PASCAL源程序转换成等价的目标码的程序 C)生成和修改一个PASCAL语言源程序的程序 D)把PASCAL的目标码程序转换成可运行的EXE文件的程序 (22)下列中错误的PASCAL表达式是 A)10e6*3.7 B)17 DIV 3 C)18 DIV 3*4.0 D)4.018DIV3 (23)下列哪种类型的常量不能用来定义子界类型 A)Real B)Integer C)CHar D)用户定义的任何顺序类型 (24)以下正确的PASCAL实型数是 A)0.56E2.5 B)2.56E2 C)。318E1 D)34.E5 (25)假定所有变量均为实型,算式:ua _________的正确的PASCAL表达式是 b——v ___u*d c——w A)(ua)/(b——v)/(c——w)u*d B)(ua)/(b——v)/(c——w))u*d C)(ua)/((b——v)/(c——w)u*d)D)(ua)/((b——v/c——w)u*d) (26)设x是实型变量,下列哪一个表达式能将x四舍五入后保留二位小数? A)Round(x)B)Round(x)/100.0 C)Round(x*100.0)/100.0 D)Trunc(x*100.0)/100.0 (27)a1,a2,a3是布尔型变量,分别等于True,True,False,下列表达式的值为False的是 A)NOT a1 AND NOT a2 B)a1 OR a2 AND a3 C)(NOT a1 OR a2)AND(a2 OR a3)D)False OR NOT a1 AND a2 OR NOT a3 (28)设有说明CONST letter='h';则语句Writeln (Chr(Ord(letter)(Ord('A')——Ord('a'))))输出结果是 A)H B)h C)72 D)104 (29)设a,b,x均是基类型为字符型的集合变量。且a=['a','c','f','u'], b=['c','d','f','u'],下列哪个赋值语句使x为非空集合? A)x:=a——b——['a']B)x:=a*b——['a'] |
|
C)x:=aa*a——a D)x:=(aa)*(a——a) (30)下面的输出语句中错误的语句是(各选项中所用的均是单引号) A)Writeln('''$''is used to mean ''US doller'''); B)Writeln('The word ''china''has five letters'); C)Writeln('The sign ''$''is used to mean ''USdoller'''); D)Writeln('The word 'china'has five letters'); (31)已知有说明如下:VAR p,q:^Integer; a,b:Integer; 下列哪个赋值语句无语法错误? A)p:=a;B)a:=pq;C)q^:=p^a^;D)b:=aq^; (32)要设计一个只由主程序调用的子程序(过程或函数),其功能是把参数ch修改后的内容不用全局变量传给主程序,应使用下面哪个过程或函数的首部? A)PROCEDURE upcase(ch:Char); B)FUNCTION upcase(ch:Char):Char; C)FUNCTION upcase(VAR ch:Char); D)FUNCTION upcase(ch:Char):Integer; (33)下列说法中正确的是 A)动态变量不能是二维数组 B)动态变量只能是指针类型的变量 C)动态变量不能在程序运行过程中生成和删除 D)动态变量的值是指针变量所指的存储单元的内容 (34)设有说明TYPE byte=0.。7; word=0.。15; num=Real; VAR a:byte;b,c:word;d:Integer;e:num f:Char; 则下列中不合法的赋值语句是 A)b:=a;B)d:=c;C)e:=d;D)a:=f; (35)下列说明中不正确的是 A)TYPE a=RECORD B)VAR x:Real; a1:Integer;y:=RECORD a2:Real;x:=Integer; a3:b y:=Char; END;z:RECORD b=RECORD y:Real; b1:Char;z:Boolean b2:Real END END;END; VAR x:a; C)TYPE a=^b;D)TYPE b=RECORD b=RECORD b1:Char; b1:Char;b2:Real b2:a END; |
|
END;a=RECORD VAR x:a;a1:Integer; a2:b END; (36)设x,z,m,j为整型变量,且z,m均已赋值,并有程序段: x:=z; FOR j:=1 TO m DO x:x——1; 下面赋值语句与上述程序段等价的是 A)x:=x——j;B)x:=z——m;C)x:=j——z;D)x:=jm; (37)设a,b,c为整型变量且变量已赋值。下面程序段中能实现当ab)THEN BEGIN c:=a;a:=b;b:=c; b:=a; a:=b END; (38)程序PROGRAM pp(Output); VAR a,k:Integer; BEGIN a:=5; WHILE a《10 DO BEGIN k:=0; PRPEAT Writeln('*'); k:=k2 UNTIL k》a; a:=a2 END END. 执行后输出'*'的个数是 A)11个B)12个C)13个D)15个 (39)若希望得到a=2,b=4,c=6,d=8,针对下面的读语句 Read(a); Readln(b,c); Readln(d); 以下不正确的输入形式(表示回车符)是 A)2 B)2 C)2 4 D)2 4 6 4 4 6 8 6 6 8 8 8 (40)已知有类型说明:TYPE t1=(red,yellow,blue); 下面哪个过程可以输出枚举变量a的值? A)PROCEDURE putout(a:t1);B)PROCEDURE putout(a:t1); BEGIN BEGIN CASE a OF CASE Ord(a)OF 'red':Writeln('red');0:Writeln('red'); 'yellow':Writeln('yellow');1:Writeln('yellow'); 'blue':Writeln('blue')2:Writeln('blue') END END END;END; C)PROCEDURE putout(a:t1);D)PROCEDURE putout(a:t1) BEGIN BEGIN CASE a OF CASE Ord (a)OF 0:Writeln('red');red :Writeln ('red'); 1:Writeln('yellow');yellow:Writeln('yellow'); 2:Writeln('blue')blue:Writeln('blue') END END END;END; (41)设变量均已说明,下列过程或程序段合法的是 |
|
A)PROCEDURE pric1(a:Char;VAR b:Char); BEGIN b:=Chr(Ord(a)1); proc1:=b END; B)PROCEDURE proc2(a,b:Integer); BEGIN …… END; BEGIN {主程序} …… proc2(2.4,1); …… END. C)PROCEDURE proc3(a:Real;VAR b:Real); BEGIN …… END; BEGIN {主程序} …… x:=1.0; y:=2.0; proc3(xy,x——y); …… END. D)PROCEDURE proc4(a,b:Real); BEGIN …… END; BEGIN {主程序} …… proc4(1,2); …… END. (42)下面程序 PROGRAM p1(Output); VAR a,k:Integer; BEGIN a:=13972;k:=0; WHILE a《》0 DO BEGIN a:=a DIV 10;k:=k1 END; Writeln(k) END. 执行后的输出是 A)0 B)4 C)5 D)6 (43)已知有如下类型说明和函数: TYPE parr=ARRAY[1.。20]OF ^Integer; FUNCTION ff(a:parr):Integer; VAR k,b:Integer; BEGIN b:a[1]^; FOR k:=2 TO 20 DO IF a[k]^》b THEN b:=a[k]^; ff:=b END; 函数ff返回的是 A)指针a所指的整数数组中数的最大值 B)指针数组a中的最大的指针值 C)指针数组a各元素所指的数中的最大值 D)指针a所指的整数数组中数的最大值 (44)阅读下面函数: FUNCTION func:Integer; VAR x:Integer; FUNCTION ff(y:Integerf):Boolean; BEGIN ff:=(y》=1)AND (y《=12) END; BEGIN REPEAT Readln(x) UNTIL NOT ff(x); func:=x END; 此函数从键盘接收并只返回特定的值,而不理睬其它值,这些特定的值是 A)大于等于1且小于等于12的任意整数 B)小于等于1或大于等于12的任意整数 C)大于1且小于12的任意整数 D)小于1或大于12的任意整数 (45)有程序段: s:[1.。5,10.。20]; FOR i:=1 TO 5 DO a[i]:=3 *i——4; |
|
FOR i:=1 TO 5 DO IF a[i]IN s THEN Write('0') ELSE Write('1'); 假设变量均已说明,则程序段后的输出为 A)10110 B)00111 C)10010 D)11010 (46)下列程序中输出为1——1的是 A)PROGRAM one(Output); VAR a,b:Integer; PROCEDURE proc1(x,y:Integer); BEGIN x:=ab; y:=a——b; Writeln(x:3,y:3) END; BEGIN a:=1; b:=2; proc1(a,b) END. B)PROGRAM one(Output); VAR a,b:Integer; PROCEDURE proc2(x,y:Integer); BEGIN x:=ab; y:=a——b; END; BEGIN a:=1; b:=2; proc2(a,b) Writeln(a:3,b:3) END. C)PROGRAM three (Output); VAR a,b:Integer; PROCEDURE proc3(x:Integer;VAR y:Integer); BEGIN x:=ab; y:=a——b; END; BEGIN a:=1; b:=2; proc3(a,b) Writeln(a:3,b:3) END. D)PROGRAM four (Output); VAR a,b:Integer; PROCEDURE proc4(x:Integer;VAR y:Integer); BEGIN x:=ab; y:=a——b; END; BEGIN a:=1; b:=2; proc4(a,b) Writeln(a:3,b:3) END. (47)设有过程p1的说明如下(仅给出过程的主要部分) PROCEDURE p1; VAR a,b:Integer; c,d:Char; PROCEDURE p2 (VAR e:Integer); VAR b,f:Real; BEGIN …… END; BEGIN …… END. 在过程p2中,对变量e最适当的描述是 A)e是一个值型参数。B)e是一个全局变量。 C)e是一个形式参数。D)e是一个实际参数。 (48)已知有过程: PROCEDURE graph(hight:Integer;ch1,ch2:Char); VAR i,j:Integer; BEGIN FOR i:=1 TO hight DO BEGIN Write(ch1:10——i); FOR j:=1 TO 2*i——3 DO Write(ch2); IF i=1 THEN Writeln ELSE Writeln (ch1) END END; |
|
若在主程序中执行graph(6,'*','')则输出图形是 A)*B)** **** **** **** **** ******* C)D)* *** ***** ******* ********* *********** (49)已知有函数f1如下: FUNCTION f1(a,b:Integer):Integer; BEGIN IF b=0 THEN f1:=a ELSE f1:=f1(Pred(a),Pred(b)) END; 执行Writeln(f1(10,6));后的输出是 A)4 B)6 C)10 D)16 (50)程序PROGRAM p1(Output); VAR a:ARRAY[1.。4]OF Char; c,ch:Char; BEGIN FOR ch:='A'TO 'D'DO a[Ord(ch)——Ord('A')1]:=ch; FOR ch:='A'TO 'D'DO BEGIN FOR c:=ch TO'D'DO Write(a[Ord(c)——Ord('A')1]; Writeln END END. 的输出是 A)A B)D C)ABCD D)ABCD B C ABC BCD C B AB CD D A A D 二。填空题(将每空的正确答案写在答题卡上1——20的序号横线上,答在试卷上不得分。) (1)自动批处理文件名为1_____ (2)DOS命令分为内部命令与外部命令,COMP命令属于2 命令_____ (3)设当前盘为C盘,现要用一条DOS命令在打印机上输出A盘当前目录下所有扩展名为。DAT的文件内容。这一条DOS命令为3_____ (4)要将当前盘当前目录下的子目录XYZ中所有扩展名为。BAK 的文件名改成扩展名为。FOR,应使用的DOS命令为4______ (5)设DOS外部命令文件所在的路径均已用PATH命令打通。现要将当前盘当前目录下的文件WST.TXT设置为只读属性,应使用的DOS命令为5___ (6)下面计算并输出下式中s 的值_____ 请填空完成程序。 PROGRAM t6(Input,Output); VAR k,n:Integer; s,r:Real; BEGIN s:6 ______ FOR k:=2 TO 20 DO BEGIN r:=0; FOR n:=1 TO 7 DO _____ r:=rLn(n); s:=s8 ___ END; Writeln(s:10:3) END. |
|
(7)下面的程序将n个学生的英文成绩从键盘输入,按0——59分,60——69分 70——79分,80——89分90——100分,分组统计人数。 PROGRAM exam2(Input,Output); CONST n=20; VAR i,k:Integer; s:ARRAY[1.。5]OF Integer; a:ARRAY[1.。N]OF Integer; BEGIN FOR i:=1 TO 9 DO _____ s[i]:=0; FOR i:=1 TO 10 DO ____ BEGIN 11; ____ IF a[i]》=90 THEN k:=1 ELSE IF a[i]》=80 THEN k:=2 ELSE IF a[i]》=70 THEN k:=3 ELSE IF a[i]》=60 THEN k:=4 ELSE k:=5; s[k]:=12 ______ END; Readln; FOR i:=1 TO 5 DO Write (s[i]:3); Writeln END. (8)从键盘输入两个数x1,x2,判断它们是否互质。 判断两数是否互质的方法是:设大数为x1,小数为x2,如果x1/x2为整数则非互质;如果x2和x1能同时被2——x2/2间任一整数整除,则x1 和x2 也非互质。其它情况均为互质。 PROGRAM sj11(Input,Output); VAR x1,x2,t,n,i:Integer; yes:Boolean; BEGIN Write('Please input x1,x2'); Readln(x1,x2); IF (13 )THEN _________ BEGIN t:=x1;x1:=x2;x2:=t END; yes:=True; IF (x1 MOD x2)=0 THEN yes :=False ELSE BEGIN n:=x2 DIV 2; FOR i:=2 TO 14 DO _____ IF 15 THEN ____ yes:=False END; IF 16 THEN ____ Writeln('They are mutual prime numbers'){x1,x2互质} ELSE Writeln('They are not mutual prime numbers'){x1,x2互质} END. (9)已知有说明:TYPE ptr=^rec; rec=RECORD data:Integer; next:ptr END; 函数append可建立一个无重复结点的单链表,即该函数检查已建立的结点中是否有da (9)已知有说明:TYPE ptr=^rec;rec=RECORD datd:lnteger; |
|
next:ptr END; 函append可建立一个无重复结点的单链表,即该函数检查已建立的结点中是否有data或与n相等的节点。若有这样的节点则原链表不变,并返回假,否则以n作为一个新节点链接在原链表之后,并返回真。 PUNCTION append (VAR head:ptr;n:lnteger):Boolean; VAR r,p,q:ptr;linked:Boolean; BEGIN linkcd:=True;New(q);q^。next:=NIL;q^。data:=n; IF head=NIL THEN 17 :=q ──── ELSE BEGIN p:=head; REPEAT r:=p; IF p^。data=n THEN linked:=False ELSE IF 18〈〉NIL THEN ──── p:=p^。ncxt UNTIL (19 )OR NOT linkcd; ──── IF linked THEN 20 :=q ─── ELSE Dinked (q) END;append:=linked END;1998年9月全国计算机等级考试二级笔试试卷 基础知识和Pascal语言程序设计 答案及评分标准 一。选择题((1)~(40)题,每题1分;(41)~(50)题,每题2分,共60分) (1)B (2)B (3)D (4)D (5)B (6)A (7)B (8)C (9)D (10)A (11)D (12)C (13)A (14)B (15)D (16)C (17)B (18)A (19)A (20)A (21)B (22)D (23)A (24)B (25)C (26)C (27)A (28)A (29)B (30)D (31)D (32)B (33)D (34)D (35)A (36)B (37)B (38)B (39)B (40)B (41)D (42)C (43)C (44)D (45)C (46)C (47)C (48)D (49)A (50)D 二。填空题(│1 │~│20 │每空2分,共40分) (1)~(5)题中所有字母都允许大、小写或大小写混合 (1)┌──┐ │1 │AUTOEXEC.BAT (2)┌──┐ │2 │外部(答外部命不扣分) (3)┌──┐ │3 │COPY A:*。DAT PRN |
|
└──┘(在COPY后面与A:*。DAT后面都至少要一具空格) (4)┌──┐ │4 │REN XYZ、*。BAK*。FOR或RENAME XYZ、*。BAK*。FOR └──┘(在REN或RENAME后面一XYZ、*。BAK后面都至少要有一个空格) (5)┌──┐ │5 │ATTRIB R WST.TXT └──┘(在ATTRIB后面与R 后面都至少要有一个空格)或ATTRIB WST.TXT R (在ATTRIB后面与WST.TXT后面都至少要有一个空格) (6)┌──┐ │6 │0 │7 │k │8 │Ln(r)或Ln(r); (7)┌──┐ │9 │5 └──┘ │10 │n │11 │Read(a[i])或Readln(a[i]) └──┘ │12 │s[k]1或s[k]1;或succ(s[k])或succ(s[k]); (8)┌──┐ │13 │x1〈x2或x1〈=x2或not(x2〈x1)或not(x2〈=x1) │14 │n或x2 div 2或sqrt(x2)或n~x2 ——1中的整数广 │15 │(x1 MODi=0)AND(x2 MODi=0)或 └──┘(x2 MODi=0)AND(x1 MODi=0)或 ((x1 MODi)=0)AND((X2 MODi)=0)或 ((x2 MODi)=0)AND((x1 MODi)=0) │16 │yes或yes=True或not(yes=false)或yes〈〉false (9)┌──┐ │17 │head │18 │p^。next ┌──┐ │19 │r^。next=nil或not(r^。next〈〉nil) │20 │p^。next |
|
·1994年4月全国计算机等级考试二级笔试Pascal语言
·1995年全国计算机等级考试二级笔试Pascal语言 ·1996年4月全国计算机等级考试二级笔试Pascal语言 ·1996年9月全国计算机等级考试二级笔试Pascal语言 |
| 【关闭窗口】 | |