?? 2000年4月二級(jí)筆試試題pascal.txt
2000年4月
全國(guó)計(jì)算機(jī)等級(jí)考試二級(jí)筆試試卷
基礎(chǔ)部分和PASCAL語(yǔ)言程序設(shè)計(jì)
(考試時(shí)間性120分鐘,滿分100分)
一、選擇題(1)~(40)題每小題1分,(41)~(50)題每小題2分,共60分)
下列各題A),B),C),D)四個(gè)選項(xiàng)中,只有一個(gè)選項(xiàng)是正確的,請(qǐng)將正確選項(xiàng)涂寫在答卡相應(yīng)位置上,答在試卷上不能得分。
(1) 下列述敘中正確的是
A) 顯示器和打印機(jī)都是輸出設(shè)備 B) 顯示器只能顯示字符
C) 通常的彩色顯示器都有7種顏色 D) 打印機(jī)只能打印字符和表格
(2) 微型計(jì)算機(jī)中運(yùn)算器的主要功能是進(jìn)行
A) 算術(shù)運(yùn)算 B) 邏輯運(yùn)算 C) 算術(shù)和邏輯運(yùn)算 D) 初等函數(shù)運(yùn)算
(3) COMMAND。COM是DOS系統(tǒng)的最外層模塊,通常稱之為
A) 引導(dǎo)程序 B) 輸入輸出系統(tǒng) C) 命令處理系統(tǒng) D) 文件管理系統(tǒng)
(4) 電子郵件是
A)網(wǎng)絡(luò)信息檢索服務(wù)
B)通過(guò)Web網(wǎng)頁(yè)發(fā)布的公告信息
C)通過(guò)網(wǎng)絡(luò)實(shí)時(shí)交互的信息傳遞方式
D)一種利用網(wǎng)絡(luò)交換信息的非交互式服務(wù)
(5) 和十進(jìn)制數(shù)225相等的二進(jìn)制數(shù)是
A) 11101110 B) 11111110 C) 10000000 D) 11111111
(6) 下列敘述中正確的是
A) 指令由操作數(shù)和操作碼兩部分組成
B) 常用參數(shù)xxMB表示計(jì)算機(jī)的速度
C) 計(jì)算機(jī)的一個(gè)字長(zhǎng)總是等于兩個(gè)字節(jié)
D) 計(jì)算機(jī)語(yǔ)言是完成某一任務(wù)的指令集
(7) 計(jì)算機(jī)的內(nèi)存儲(chǔ)器比外存儲(chǔ)器
A) 價(jià)格便宜 B) 存儲(chǔ)容量大 C) 讀寫速度快 D) 讀寫速度慢
(8) 設(shè)當(dāng)前盤為C盤,執(zhí)行DOS命令"COPY B:\A.TXT PRN"之后,結(jié)果是
A) B盤上的A.TXT文件被復(fù)制到C盤的PRN文件
B) 屏幕上顯示B盤上的A.TXT文件內(nèi)容
C) B盤上的A.TXT文件內(nèi)容在打印機(jī)上輸出
D) B盤上的A.TXT文件被復(fù)制到B盤上的PRN文件
(9) 要將當(dāng)前盤當(dāng)前目錄下的兩個(gè)文件X1.TXT和B1.TXT連接起來(lái)之后存入B盤當(dāng)前目錄下并且命名為Z.TXT,無(wú)論B盤當(dāng)前目錄是什么,完成這件任務(wù)可以使用的命令是
A) COPY A:X1.TXT+C:B1.TXT Z.TXT
B) COPY X1.TXT+C:\WS\B1.TXT B:\Z.TXT
C) COPY A:X1.TXT+C:\WS\B1.TXT
D) COPY X1.TXT+B1.TXT B:Z.TXT
(10) 下列四組DOS命令中,功能等價(jià)的一組是
A) COPY A:*.* B:與DISKCOPY A: B:
B) COPY ABC.TXT+XYZ.TXT 與TYPE XYZ.TXT>>ABC.TXT
C) COPY ABC.TXT+XYZ.TXT與COPY XYZ.TXT+ABC.TXT
D) TYPE *.FOR>CON與COPY *.FOR CON
(11) 設(shè)當(dāng)前目錄為D:\BB,現(xiàn)要把D:\AA目錄下首字符是A的文本文件全部刪除,
應(yīng)該使用命令
A) DEL A*.TXT B) DEL \AA\A.TXT
C) DEL \AA\A*.TXT D) DEL \AA\A?.TXT
(12) 在Windows中,啟動(dòng)應(yīng)用程序的正確方法是
A) 用鼠標(biāo)指向該應(yīng)用程序圖標(biāo)
B) 將該應(yīng)用程序窗口最小化成圖標(biāo)
B) 將該應(yīng)用程序窗口還原
D) 用鼠標(biāo)雙擊該應(yīng)用程序圖標(biāo)
(13) 在Windows中,終止應(yīng)用程序執(zhí)行的正確方法是
A) 將該應(yīng)用程序窗口最小化成圖標(biāo)
B) 用鼠標(biāo)雙擊應(yīng)用程序窗口右上角的還原按鈕
C) 用鼠標(biāo)雙擊應(yīng)用程序窗口中的標(biāo)題欄
D) 用鼠標(biāo)雙擊應(yīng)用程序窗口左上角的控制菜單框
(14) 在微機(jī)系統(tǒng)中,對(duì)輸入輸出設(shè)備進(jìn)行管理的基本程序模塊(BIOS)存放在
A) RAM中 B) ROM中 C) 硬盤中 D) 寄存器中
(15) 使計(jì)算機(jī)病毒傳播范圍最廣的媒介是
A) 硬磁盤 B) 軟磁盤 C) 內(nèi)部存儲(chǔ)器 D) 互聯(lián)網(wǎng)
(16) 若未做任何常量定義,則下面正確的PASCAL常量是
A) Flase B) ln3 C) 'PASCAL' D) .008
(17) PASCAL源程序中不正確的注釋語(yǔ)句是
A) 用一對(duì)"{"和"}"括起來(lái)的字符串
B) 用一對(duì)"/*"和"*/"括起來(lái)的字符串
C) 用一對(duì)"(*"和"*)"括起來(lái)的字符串
D) A)或C)
(18) 下列類型定義中不合法的是
A) TYPE A=(B,C,D); B) TYPE A=(B,C,D);
a1=D..B; a2=B..C;
C) TYPE A=(B,C,D); D) TYPE A=(B,C,D);
a3=B..D; a4=C..C;
(19) 下列常量說(shuō)明中合法的是
A) CONST write=2.5; B) CONST s=(a,b,c);
C) CONST pi=π; D) CONST t=1..9;
(20) 語(yǔ)句Writeln('25*4=')正確的輸出結(jié)果是
A) 100 B) '25*4=' C) 25*4= D) 25*4=100
(21) 要使表達(dá)式(x<=100)AND(x>=10) OR NOT(x<>0)的值為True,則整型變量x值的范圍是
A) 10~100與0 B) 10~100或0 C) 0 D) 10~100
(22) 表達(dá)式False AND Odd(-305)>(5-7<=-2)的值是
A) False B) True C) 1 D) 0
(23) 設(shè)a,b,c均為整型變量,下面語(yǔ)句
a:=2; b:=4; c:=1;
a:=a+b; b:=a-b; c:=a DIV b;
運(yùn)行后,a,b,c的值分別是
A) 2 4 0 B) 6 2 3 C) 2 4 1 D) 6 2 0
(24) 已知有說(shuō)明
VAR x,y:Integer;
u,v:Real;
則下列賦值語(yǔ)句合法的是
A) x:=u-v; B) u:=x+y; C) x:=x/y; D) y:=x MOD u;
(25) 下面哪組語(yǔ)句與Writeln(a,b,c);完全等價(jià)?
A)Write(a); Write(b); Write(c);
B) Writeln(a); Writeln(b); Writeln(c);
C) Writeln(a,b); Write(c);
D) Write(a,b); Writeln(c);
(26) 若希望得到 a=1,b=2,c=3,d=4,針對(duì)以下讀語(yǔ)句
Read(a,b);
Readln(c);
Readln(d);
下面不正確的輸入格式是
A) 1 B) 1 2 C) 1 2 D) 1
2 3 4 3 2 3
3 4 4
4
(27) 下列哪個(gè)函數(shù)的值不是'D'?
A) Chr(Ord('A')+3) B) Succ(Succ(Succ('A')))
C) Succ(Chr(Pred(Ord('A'))+4)) D) Pred(Chr(Ord('A')+4))
(28) 下面變量說(shuō)明中語(yǔ)法正確的是
A) VAR a,b:ARRAY[a..c,1..10] OF Char;
B) VAR a:PACKED ARRAY['a'..'f'] OF Char;
C) VAR a:ARRAY[5..1,False..True] OF Char;
B) VAR a:ARRAY[1..10] OF Char ARRAY[1..5] OF Integer;
(29) 設(shè)有如下程序段
a:=0; {a,i為整型變量}
FOR i:=1 TO 15 DO
a:=a+i MOD 3;
Writeln(a);
該程序段運(yùn)行后輸出的結(jié)果是
A) 90 B) 1 C) 15 D) 120
(30) 下面正確的枚舉類型或子界類型定義是
A) TYPE vowel=('a','e','i','o','u');
B) TYPE day=1..31 or 1..30 or 1..28;
C) TYPE color=(red,blue,green);
D) TYPE workdays=mon..fri;
workdays=(mon,tue,wed,thu,fri,sat,sun);
(31) 設(shè)有說(shuō)明
TYPE t=(A,B,C,D);
VAR s:ARRAY(11..15) OF ARRAY[t] OF Integer;
則數(shù)組s中共有多少個(gè)元素?
A) 4 B) 5 C) 9 D) 20
(32) 設(shè)有變量說(shuō)明:VAR c:'A'..'Z';
a,b: SET OF 'A'..'Z';
下列哪個(gè)表達(dá)式的值不能直接用Write語(yǔ)句輸出?
A) c IN (a+b) B) a<b C) a*b D) a=[c]
(33) 下面合乎語(yǔ)法的函數(shù)或過(guò)程首部是
A) PROCEDURE print:Char;
B) PROCEDURE add(x,y,VAR z);
C) FUNCTION sum(n:Integer);
D) PROCEDURE abc;
(34) 下面循環(huán)語(yǔ)句能構(gòu)成有限次循環(huán)的是
A) i:=4; B) i:=7;
REPEAT REPEAT
i:=i+1 i:=i+1
UNTIL i>0; UNTIL i<0;
C) i:=8; D) i:=1;
REPEAT REPEAT
i:=i-2 i:=i+2
UNTIL i=1; UNTIL i=8;
(35) 下列表達(dá)式中結(jié)果為空集的是
A) [1..5]-[6] B) [1..5]+[6] C) [1..5]*[6] D) 6 IN [1..5]
(36) 下列描述中錯(cuò)誤的是
A)文本文件不是隨機(jī)文件
B) 只能對(duì)文件指針?biāo)傅脑剡M(jìn)行讀寫
C) Readln過(guò)程不能用于隨機(jī)文件
D) 隨機(jī)文件只能隨機(jī)讀寫,不能順序讀寫
(37) 請(qǐng)閱讀下面函數(shù)
FUNCTION f(n:Integer):Integer;
BEGIN
IF n<1 THEN
f:=0
ELSE
f:=f(n-1)+n
END;
此函數(shù)的功能是
A) 返回n!的值 B) 返回1+2+3+...+n的值
C) 返回n×n的值 D) 返回n×2的值
(38) 變量r指向如下圖所示的存儲(chǔ)結(jié)構(gòu),其中p是指向字符串(長(zhǎng)度=10)的指針域,
next是指向該結(jié)構(gòu)的指針域,data存放整形數(shù)。
p next data
┌────┬────┬────┐
r→│ │ │ │
└────┴────┴────┘
下面對(duì)此結(jié)構(gòu)的類型定義和變量r的說(shuō)明正確的是
A) VAR r:RECORD B) VAR r:RECORD
p:^Char; p:^STRING[10];
next:^r; next:^r;
data:Integer data:Integer
END; END;
C) TYPE link=^node; D) TYPE link=^node;
node=RECORD node=RECORD
p:^STRING[10]; p:^STRING[10];
next:link; next:link;
data:Integer data:Integer
END; END;
VAR r:link; VAR r:node;
(39) 設(shè)有說(shuō)明
VAR p,q:^Integer;
x:ARRAY[10..30] OF Integer;
當(dāng)執(zhí)行過(guò)程語(yǔ)句
New(p); New(q);
后,若有賦值語(yǔ)句
p^:=10; q^:=20;
則下列賦值語(yǔ)句合法的是
A) x[q]:=p^ B) x[q^]:=p C) x[q^]:=p^ D) x[q]:=p
(40) 設(shè)有如下說(shuō)明
TYPE link=^rec;
rec=RECORD
data:Integer;
next:link
END;
FUNCTION f(head:link):Integer;
VAR n:Integer;
BEGIN
n:=0;
WHILE head<>NIL DO
BEGIN
n:=n+1;head:=head^.next
END;
f:=n
END;
若調(diào)用函數(shù)f時(shí)的實(shí)參為指向一個(gè)單鏈表的頭節(jié)點(diǎn)的指針,則函數(shù)返回的是
A) 鏈表中節(jié)點(diǎn)數(shù)據(jù)的最大值 B) 鏈表中節(jié)點(diǎn)數(shù)據(jù)的最小值
C) 鏈表中節(jié)點(diǎn)的個(gè)數(shù) D) 鏈表中節(jié)點(diǎn)數(shù)據(jù)值之和
(41) 設(shè)有說(shuō)明
TYPE
t1=RECORD
a:Integer;
b:Real
END;
t2=RECORD
a:Integer;
b:Real;
d:t1
END;
VAR r:t2;
若要求對(duì)r.a賦值為1,則下列哪個(gè)程序段能滿足要求?
A) WITH r DO B) WITH d DO
WITH d DO WITH r DO
BEGIN BEGIN
a:=1; a:=1;
b:=2; b:=2;
c:=3 c:=3
END; END;
C) WITH d,r DO D) WITH r DO
BEGIN BEGIN
a:=1; a:=1;
b:=2; WITH d DO
c:=3 BEGIN
END; a:=1;b:=2;c:=3
END
END;
(42) 請(qǐng)閱讀下面函數(shù)
FUNCTION f(n:Integer):Integer;
VAR t,k:Integer;
BEGIN
t:=n+1;
FOR k:=3 TO n DO
t:=t*k;
f:=t
END;
此函數(shù)返回的是下列哪個(gè)表達(dá)式的值?
A) n! B) (n+1)!-2 C) (n+1)! D) (n+1)!÷2
(43) 設(shè)n,t,k是整型變量,為使下面的程序段可以正確輸出n!的值(n<=7)
Readln(n);
t:=1; k:=1;
WHILE k<n DO
BEGIN
k:=k+1;
p(t,k)
END;
Writeln(t);
應(yīng)選用的過(guò)程是
A) PROCEDURE p(t,a:Integer);
BEGIN
t:=t*a; a:=a+1
END;
B) PROCEDURE p(VAR t:Integer; a:Integer);
BEGIN
t:=t*a; a:=a+1
END;
C) PROCEDURE p(t:Integer; VAR a:Integer);
BEGIN
t:=t*a; a:=a+1
END;
D) PROCEDURE p(VAR t,a:Integer)
BEGIN
t:=t*a; a:=a+1
END;
(44) 設(shè)有說(shuō)明
VAR i,j:Integer;
a:ARRAY[1..5] OF Integer;
并有下列程序段
a[1]:=1;
FOR i:=1 TO 5 DO
FOR j:=1 TO 5 DO
a[j]:=a[i]+1;
FOR i:=1 TO 5 DO
Write(a[i]:3);
Writeln
則程序段運(yùn)行后的輸出結(jié)果是
A) 1 2 3 4 5 B) 1 3 5 7 9
C) 2 3 4 5 6 D) 2 4 6 8 10
(45) 有如下程序
PROGRAM p30(Input,Output);
VAR i,j,y:Integer;
a:ARRAY[1..8] OF Integer;
BEGIN
i:=1; y:=18;
WHILE y>=1 DO
BEGIN
a[i]:=y MOD 2;
y:=y DIV 2;
i:=i+1
END;
FOR j:=i-1 DOWNTO 1 DO
Write(a[j]);
Writeln
END.
則程序運(yùn)行后的輸出結(jié)果是
A) 10000 B) 10010 C) 00110 D) 10100
(46) 有下列程序
PROGRAM exam(Output);
VAR m,n:Integer;
BEGIN
m:=63; n:=14;
WHILE m<>n DO
BEGIN
WHILE m>n DO
m:=m-n;
WHILE n>m DO
n:=n-m;
END;
Writeln(m:4,n:4)
END.
則運(yùn)行結(jié)果是
A) 1 1 B) 7 7 C) 1 7 D) 7 1
(47) 有以下程序
PROGRAM p28(Input,Output);
TYPE arr=ARRAY[1..8] OF Integer;
VAR a:arr;i,n:Integer;
PROCEDURE select(VAR b:arr; VAR n:Integer);
VAR i,j:Integer;
BEGIN
i:=0;
FOR j:=1 TO n DO
IF b[j] MOD 2=0 THEN
BEGIN
i:=i+1; b[i]=b[j]
END;
n:=i
END;
BEGIN
n:=8;
FOR i:=1 TO n DO
Read(a[i]);
Readln;
select(a,n);
FOR i:=1 TO n DO
Write(a[i]:3);
Writeln
END.
若程序運(yùn)行時(shí)輸入數(shù)據(jù):
1 2 3 4 5 6 7 8<回車>(每個(gè)數(shù)據(jù)之間有一個(gè)空格符)
則程序的運(yùn)行結(jié)果是
A) 1 3 5 7 B) 2 4 6 8 C) 1 2 3 4 D) 2 2 4 4
(48) 設(shè)文件file.dat的內(nèi)容是1 2 3 4 5 6 (每個(gè)數(shù)據(jù)之間有一個(gè)空格符),并有下列程序:
PROGRAM main(Input,Output);
CONST n=6;
VAR i,x:lnteger;
a:ARRAY[l..n] OF lnteger;
f:Text;
BEGIN
Assign(f,'file.dat');
Reset(f);
FOR i:=n DOWNTO 1 DO
BEGIN
Read(f,x); a[i]:=x
END;
Colse(f);
FOR i:=1 TO n DO
IF i MOD 2=0 THEN
Write(a[i]:3);
Writeln
END.
則程序的運(yùn)行結(jié)果是
A) 1 3 5 B)5 3 1 C) 2 4 6 D) 6 4 2
(49) 有下列程序
PROGRAM aaa(Output);
FUNCTION p(x,n:Integer):Integer;
BEGIN
IF n=0 THEN
p:=1
ELSE IF Odd(n) THEN
p:=x*Sqr(p(x,n DIV 2))
ELSE
p:=Sqr(p(x,n DIV 2))
END;
BEGIN
Writeln(p(2,3))
END.
則程序的運(yùn)行結(jié)果是
A) 2 B) 4 C) 6 D) 8
(50) 設(shè)a,b是整形變量。對(duì)任意正整數(shù)a,b,下面哪個(gè)函數(shù)可以正確返回a DIV b的值?
A) FUNCTION f(a,b:Integer):Integer; B) FUNCTION f(a,b:Integer):Integer;
VAR x,k:Integer; VAR x,k:Integer;
BEGIN BEGIN
x:=b; k:=0; x:=b; k:=0;
REPEAT REPEAT
k:=k+1; x:=x+b k:=k+1; x:=x+b
UNTIL x=a; UNTIL x>=a;
f:=k f:=k
END; END;
C) FUNCTION f(a,b:Integer):Integer; D) FUNCTION f(a,b:Integer):Integer;
VAR x,k:Integer; VAR x,k:Integer;
BEGIN BEGIN
x:=b; k:=0; x:=b; k:=0;
WHILE x<a DO WHILE x<=a DO
BEGIN BEGIN
k:=k+1; x:=x+b k:=k+1; x:=x+b
END; END;
f:=k f:=k
END; END;
二、填空題(每空2分,共40分)
請(qǐng)將每空的正確答案寫在答題卡上【1】-【20】序號(hào)的橫線上,答在試卷上不得分。
(1) 計(jì)算機(jī)網(wǎng)絡(luò)按通信距離來(lái)劃分,可分為局域網(wǎng)和廣域網(wǎng)。因特網(wǎng)屬于 【1】 。
(2) 當(dāng)前盤是C,確保在D盤的根目錄下建立一個(gè)子目錄USER的一條DOS命令是 【2】 。
(3) 要將當(dāng)前盤當(dāng)前目錄中所有擴(kuò)展名為.TXT的文件內(nèi)容顯示在屏幕上的DOS命令是【3】 。
(4) DOS命令分為內(nèi)部命令和外部命令,CHKDSK命令是 【4】 命令。
(5) 在Windows中,為了終止一個(gè)應(yīng)用程序的運(yùn)行,首先單擊該應(yīng)用程序窗口中的控制菜單框,然后在控制菜單中單擊 【5】 命令。
(6) 下面過(guò)程swap的功能是:將兩個(gè)整數(shù)指針?biāo)傅膬?nèi)容進(jìn)行交換。請(qǐng)?zhí)羁胀瓿伞?PROGRAM swap(p,q:^Integer);
VAR temp:Integer;
BEGIN
temp:=^p;
^p:= 【6】 ;
^q:= 【7】 ;
END;
(7) 下面函數(shù)可以返回1~n之間所有可以被5整除的奇數(shù)之和。請(qǐng)?zhí)羁胀瓿伞?FUNCTION func(n:Integer):Integer;
VAR k,s:Integer;
BEGIN
s:= 【8】 ;
FOR k:=1 TO n DO
IF (k MOD 5=0) AND ( 【9】 ) THEN
s:=s+k;
func:=s
END;
(8) 下面程序?qū)⑺行懽帜笍膠開始以降序每隔一個(gè)輸出。
即輸出 z x v t ...... d b 請(qǐng)?zhí)羁胀瓿伞?PROGRAM prog8(Output);
VAR ch:Char;
BEGIN
ch:= 【10】 ;
WHILE ch>='a' DO
BEGIN
Write(ch:3);
ch:=Pred(ch);
ch:= 【11】 ;
END
END.
(9) 函數(shù)comp的功能是:計(jì)算方陣a中所有奇數(shù)行元素的最大值減去a中所有偶數(shù)行元素的最小值的差。(其中類型arr為:arr=ARRAY[1..10,1..10] OF Integer;)請(qǐng)?zhí)羁胀瓿伞?FUNCTION comp(a:arr):Integer;
VAR i,j,max,min:Integer;
BEGIN
max:=a[1,1]; min:=a[2,1];
FOR i:=1 TO 10 DO
FOR j:=1 TO 10 DO
BEGIN
IF 【12】 THEN
IF a[i,j]>max THEN
max:=a[i,j];
IF 【13】 THEN
IF a[i,j]<min THEN
min:=a[i,j];
END;
【14】
END;
(10) 輸入一串小寫英文字母,利用集合在字母表中找出所有未曾出現(xiàn)過(guò)的小寫英
文字母。輸入字符串以回車符結(jié)束。請(qǐng)?zhí)羁胀瓿伞?PROGRAM main(Input,Output);
TYPE charset=SET OF Char;
VAR ch:Char;letter: 【15】 ;
BEGIN
letter:= ['a'..'z'];
Writeln('Please input a string:');
WHILE NOT Eoln DO
BEGIN
Read(ch);
letter:= 【16】
END;
Readln;
IF letter=[ ] THEN
Writeln('Not found!')
ELSE
BEGIN
Writeln('The letter is :');
FOR ch:='a' TO 'z' DO
IF 【17】 THEN
Write(ch:2);
Writeln
END
END.
(11) 下面程序計(jì)算并輸出m和n的最大公約數(shù),請(qǐng)?zhí)羁胀瓿伞?PROGRAM xxx(Input,Output);
VAR m,n,a:Integer;
find:Boolean;
BEGIN
Readln(m,n);
a:=n;
find:= 【18】;
WHILE (NOT find) AND ( 【19】) DO
BEGIN
IF (m MOD a=0) AND (n MOD a=0) THEN
find:=True;
a:= 【20】;
END;
Writeln(a+1)
END.
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -