信息学奥赛历年试题(解答) 下载本文

历年全国青少年信息学奥赛选择题

一、单项选择题(共10题,每题1.5分,共计15分。每题有且仅有一个正确答案)。

第14届:2008年

1.在以下各项中,( )不是操作系统软件。

A.Solaris B.Linux C.Sybase D.Windows Vista E.Symbian

C是数据库系统

2.微型计算机中,控制器的基本功能是( )。

A.控制机器的各个部件协调工作 B.实现算数运算与逻辑运算 C.存储各种控制信息 D.获取外部信息 E.存放程序和数据

3.设字符串S=“Olympic”,S的非空子串的数目是( )。

A.29 B.28 C.16 D.17 E.7

1个字符的子串(7个):\2个字符(6个):\ .…… 7个字符(1个):olympic 所以:共有7+6+5+4+3+2+1=28

4.完全二叉树有2*N-1的结点,则它的叶子结点数目是( )。

A.N-1 B.2*N C.N D.2N-1 E.N/2

最多只能在最下层缺少结点,并且缺少的结点都在最右边,即最下层的结点都集中在该层最左边,则称此二叉树为完全二叉树。

5.将数组{8,23,4,16,77,-5,53,100}中元素从大到小按顺序排序,每次可以交换任意两个元素,最少要交换( )次。

A.4 B.5 C.6 D.7 E.8

6.设栈S的初始状态为空,元素a,b,c,d,e,f依次入栈,出栈顺序为b,d,c,f,e,a那么栈容量至少应该是( )。

A.6 B.5 C.4 D.3 E.2

7.与十进制数28.5625相等的四进制数是( )

A.123.21 B.131.22 C.130.22 D.130.21 E.130.20

整数部分就不用说了,是130 小数部分, 0.5625×4=2.25 0.25×4=1

1

所以是0.21

8.递归过程和函数调用时,处理参数和返回地址,通常使用一种称为( )的数据结构。 A.队列 B.多维数组 C.线性表 D.链表 E.栈

9.TCP/IP 是一组构成互联网基础的网络协议,字面上包括两组协议:传输控制协议(TCP)和网际互联协议(IP)。TCP/IP协议把Internet网络系统描述成具有4个层次功能的网络模型,其中提供源节点和目的节点之间的信息传输服务,包括寻址和路由器选择等功能的是( )。 A.链路层 B.网络层 C.传输层 D.应用层 E.会话层

计算机网络中的七层协议:

7 应用层 6 表示层 5 会话层 4 传输层 3 网络层 2 数据链路层 1 物理层

其中高层,既7、6、5、4层定义了应用程序的功能,下面3层,既3、2、1层主要面向通过网络的端到端的数据流。下面我给大家介绍一下这7层的功能: (1)应用层:示例:telnet,HTTP,FTP,WWW,NFS,SMTP等。 (2)表示层:示例:加密,ASCII等。 (3)会话层:示例:RPC,SQL等。 (4)传输层:示例:TCP,UDP,SPX。 (5)网络层:示例:IP,IPX等。

(6)数据链路层:示例:ATM,FDDI等。 (7)物理层:示例:Rj45,802.3等。

10.对有序数组{5,13,19,21,37,56,64,75,88,92,100}进行二分查找,等概率情况下,查找成功的平均查找长度(平均比较次数)是( )。

A.35/11 B.34/11 C.33/11 D.32/11 E.34/10

function bifind(NUM:integer):integer; var

l,r,mid:integer; begin l:=1; r:=n; while (l<=r) do begin

mid:=(l+r) div 2;

if (a[mid]==NUM) exit(mid) else if (a[mid]

2

第13届:2007年

11. 在以下各项中。( )不是 CPU 的组成部分。

A. 控制器 B. 运算器 C. 寄存器 D. 主板 E. 算术逻辑单元(ALU)

12. 在关系数据库中, 存放在数据库中的数据的逻辑结构以( )为主。 A. 二叉树 B. 多叉树 C. 哈希表 D. B+树 E. 二维表

关系模型是目前应用最多、也最为重要的一种数据模型。关系模型建立在严格的数学概念基础上,采用二维表格结构来表示实体和实体之间的联系。二维表由行和列组成。

13.在下列各项中,只有( )不是计算机存储容量的常用单位。 A. Byte B. KB C. MB D. UB E. TB

现在的单位从小到大为B,KB,MB,GB,TB,PB,EB

14.ASCII码的含义是( )。

A. 二—十进制转换码 B. 美国信息交换标准代码 C. 数字的二进制数码 D. 计算机可处理字符的唯一编码 E. 常用字符的二进制编码

15.在 Pascal 语言中,表达式 (23 or 2 xor 5)的值是( ) A. 18 B. 1 C.23 D.32 E.24

先把23、2和5用二进制写出来,23的二进制表示为00010111,2为00000010,5为00000101,然后拿23的二进制和2的二进制进行或运算,(或的运算法则为1 or 1=1、1 or 0=1、0 or 1=1、0 or 0=0)所以得出23和2的或为00010111,然后再与5进行异或(异或的运算法则为1 xor 1=0、1 xor 0=1、0 xor 1=1、0 xor 0=0)所以得出最后结果是00010010,化成十进制就是18

16.在 Pascal 语言中,判断整数a 等于 0 或b等于 0或c等于0 的正确的条件表达式是( )

A. not ((a<>0) or (b<>0) or (c<>0)) B. not ((a<>0) and (b<>0) and (c<>0)) C. not ((a=0) and (b=0)) or (c=0) D.(a=0) and (b=0) and (c=0) E. not ((a=0) or (b=0) or (c=0))

17. 地面上有标号为A、B、C的3根细柱, 在A柱上放有10个直径相同中间有孔的圆盘, 从上到下次依次编号为1, 2, 3, ??,将A柱上的部分盘子经过B柱移入C柱, 也可以在B柱上暂存。如果B柱上的操作记录为:“进,进,出,进,进,出,出,进,进,出,进,出,出”。那么, 在C柱上, 从下到上的盘子的编号为( )。

A. 2 4 3 6 5 7 B. 2 4 1 2 5 7 C. 2 4 3 1 7 6 D. 2 4 3 6 7 5 E. 2 1 4 3 7 5

3