2001年信息学奥赛NOIP普及组
剩余时间 --:--:--
单选题 共 20 题
1.

若已知一个栈的入栈顺序是 1,2,3,…,n,其输出序列为 P1,P2, P3,…,Pn,若 P1 是 n,则 Pi 是( )

2.

断电后计算机信息依然存在的部件为( )

3.

2KB 的内存能存储( )个汉字的机内码

4.

DOS 暂驻区中的程序主要是用于( )

5.

在计算机硬件系统中,cache 是( )存储器

6.

在顺序表(2,5,7,10,14,15,18,23,35,41,52)中,用二分法查找 12,所需的关键码比较的次数为( )

7.

WORD 是一种( )

8.

计算机软件保护法是用来保护软件( )的。

9.

下列设备哪一项不是计算机输入设备( )

10.

若我们说一个微机的 CPU 是用的 PII300,此处的 300 确切指的是( )

11.

运算 17 MOD 4 的结果是( )

12.

Email 邮件本质上是一个( )

13.

与二进制数 101.01011 等值的十六进制数为( )

14.

以下对 Windows 的叙述中,正确的是( )

15.

在树型目录结构中,不允许两个文件名相同主要指的是( )

16.

应用软件和系统软件的相互关系是( )

17.

下面关于算法的错误说法是( )

18.

解释程序的功能是( )

19.

在计算机内部,一切信息存取、处理和传递的形式是( )

20.

计算机病毒是( )

填空题 共 2 题
1.

输入 n 个 0 到 100 之间的整数,由小到大排序输出,每行输出 8 个

程序清单:

2.

平面上有三条平行直线,每条直线上分别有 7,5,6 个点,且不同直线上三个点都不在同一条直线上。问用这些点为顶点,能组成多少个不同三角形?

编程题 共 6 题
1.

PROGRAM CHU7_2;

VAR I,J,F:INTEGER;

A:ARRAY[1..8]OF INTEGER;

BEGIN

FOR I:=1 TO 8 DO BEGIN

F:=I MOD 2;

IF F=0 THEN A[I]:=0

ELSE A[I]:=1; FOR J:=1 TO I DO

IF F=0 THEN A[I]:=A[I]+J ELSE A[I]:=A[I]*J

END;

FOR I:=1 TO 8 DO WRITE(A[I]:5);

END.


输出

2.

PROGRAM CHU7_3;

VAR P,Q,S,T:INTEGER; BEGIN

READLN(P);

FOR Q:=P+1 TO 2*P DO BEGIN

T:=0; S:=(P*Q)MOD(Q-P); IF S=0 THEN

BEGIN

T:=P+Q+(P*Q)DIV(Q-P); WRITE(T:4);

END;

END;


READLN END.

输入:12 输出:

3.

在 A,B 两个城市之间设有 N 个路站(如下图中的 S1,且 N<100),城市与路站之间、路站和路站之间各有若干条路段(各路段数≤20,且每条路段上的距离均为一个整数)。

A,B 的一条通路是指:从 A 出发,可经过任一路段到达 S1,再从 S1 出发经过任一路段,…最后到达 B。通路上路段距离之和称为通路距离(最大距离≤ 1000)。当所有的路段距离给出之后,求出所有不同距离的通路个数(相同距离仅记一次)。

例如:下图所示是当 N=1 时的情况:

从 A 到 B 的通路条数为 6,但因其中通路 5+5=4+6,所以满足条件的不同距离的通路条数为 5。

算法说明:本题采用穷举算法。

数据结构:N:记录 A,B 间路站的个数

数组 D[I,0]记录第 I-1 到第 I 路站间路段的个数D[I,1],D[I,2],…记录每个路段距离

数组 G 记录可取到的距离

程 序 清 单 :

4.

PRGORAM CHU7_4;

VAR N,K,I:INTEGER; A:ARRAY[1..40]OF INTEGER;

PROCEDURE FIND(X:INTEGER); VAR S,I1,J1:INTEGER;

P:BOOLEAN;

BEGIN

I1:=0; P:=TRUE; WHILE P DO

BEGIN

I1:=I1+1; S:=0;

FOR J1:=1 TO N DO

IF A[J1]>A[I1]THEN S:=S+1; IF(S=X-1)THEN

BEGIN

WRITELN(A[I1]); P:=FALSE

END; END

END;

BEGIN

READLN(N,K); FOR I:=1 TO N DO

READ(A[I]); FIND(K); FIND(N-K);

END.

输入:10 4

12 34 5 65 67 87 7 90 120 13

输出:

5.

PROGRAM CHU7_1;

FUNCTION FUN(X:INTEGER):INTEGER; BEGIN

IF(X=0)OR(X=1)THEN FUN:=3

ELSE FUN:=X-FUN(X-2)

END; BEGIN

WRITELN(FUN(9)); READLN;

END.


输出:

6.

在 a,b,c,d,e,f 六件物品中,按下面的条件能选出的物品是:

(1)a,b 两样至少有一样

(2)a,d 不能同时取

(3)a,e,f 中必须有 2 样

(4)b,c 要么都选,要么都不选

(5)c,d 两样中选一样

(6)若 d 不选,则 e 也不选

C++ 编辑器
输入
输出