2002年NOIP提高组初赛真题
- 一.选择一个正确答案代码(A/B/C/D),填入每题的括号内(每题1.5分,多选无分,共30分)
-
- 1. 微型计算机的问世是由于( )的出现。
-
- A. 中小规模集成电路
- B. 晶体管电路
- C. (超)大规模集成电路
- D. 电子管电路
-
- 2. 中央处理器(CPU)能访问的最大存储器容量取决于( )。
-
- A. 地址总线
- B. 数据总线
- C. 控制总线
- D. 实际内存容量
-
- 3. 十进制 11/128可用二进制数码序列表示为:( )。
-
- A. 1011/1000000
- B. 1011/100000000
- C. 0.001011
- D. 0.0001011
-
- 4. 算式(2047)10 -(3FF)16 +(2000)8的结果是( )。
-
- A. (2048)10
- B. (2049)10
- C. (3746)8
- D. (1AF7)16
-
- 5. 已知x =(0.1011010)2 ,则[ x / 2 ]补 =( )2 。
-
- A. 0.1011101
- B. 11110110
- C. 0.0101101
- D. 0.100110
-
- 6. IPv4地址是由( )位二进制数码表示的。
-
- A. 16
- B. 32
- C. 24
- D. 8
-
- 7. 计算机病毒传染的必要条件是:( )。
-
- A. 在内存中运行病毒程序
- B. 对磁盘进行读写操作
- C. 在内存中运行含有病毒的可执行的程序
- D. 复制文件
-
- 8. 在磁盘上建立子目录有许多优点,下列描述中不属于建立子目录优点的是( )。
-
- A. 便于文件管理
- B. 解决根目录中目录项个数有限问题
- C. 加快文件查找速度
- D. 节省磁盘使用空间
-
- 9. 在使用E-mail前,需要对Outlook进行设置,其中ISP接收电子邮件的服务器称为( )服务器。
-
- A. POP3
- B. SMTP
- C. DNS
- D. FTP
-
- 10. 多媒体计算机是指( )计算机。
-
- A. 专供家庭使用的
- B. 装有CD-ROM的
- C. 连接在网络上的高级
- D. 具有处理文字、图形、声音、影像等信息的
-
- 11. 微型计算机中,( )的存取速度最快。
-
- A. 高速缓存
- B. 外存储器
- C. 寄存器
- D. 内存储器
-
- 12. 资源管理器的目录前图标中增加“+”号,这个符号的意思是( )。
-
- A. 该目录下的子目录已经展开
- B. 该目录下还有子目录未展开
- C. 该目录下没有子目录
- D. 该目录为空目录
-
- 13. 在WORD文档编辑中实现图文混合排版时,关于文本框的下列叙述正确的是( )。
-
- A. 文本框中的图形没有办法和文档中输入文字叠加在一起,只能在文档的不同位置
- B. 文本框中的图形不可以衬于文档中输入的文字的下方
- C. 通过文本框,可以实现图形和文档中输入的文字的叠加,也可以实现文字环绕
- D. 将图形放入文本框后,文档中输入的文字不能环绕图形
-
- 14. 一个向量第一个元素的存储地址是100,每个元素的长度是2,则地5个元素的地址是( )。
-
- A. 110
- B. 108
- C. 100
- D. 109
-
- 15. 已知A = 35H,A /\ 05H \/ A /\ 30H 的结果是:( )。
-
- A. 30H
- B. 05H
- C. 35H
- D. 53H
-
- 16. 设有一个含有13个元素的Hash表(0 ~ 12),Hash函数是:H(key)= key % 13,其中%是求余数运算。用线性探查法解决冲突,则对于序列(2、8、31、20、19、18、53、27),18应放在第( )号格中。
-
- A. 5
- B. 9
- C. 4
- D. 0
-
- 17. 按照二叉数的定义,具有3个结点的二叉树有( )种。
-
- A. 3
- B. 4
- C. 5
- D. 6
-
- 18. 在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的( )倍。
-
- A. 1/2
- B. 1
- C. 2
- D. 4
-
- 19. 要使1 ...8号格字的访问顺序为:8、2、6、5、7、3、1、4,则下图中的空格中应填入( )。
1 2 3 4 5 6 7 8
4 6 1 -1 7 ? 3 2 -
- A. 6
- B. 0
- C. 5
- D. 3
- 19. 要使1 ...8号格字的访问顺序为:8、2、6、5、7、3、1、4,则下图中的空格中应填入( )。
-
- 20. 设栈S和队列Q的初始状态为空,元素e 1 ,e 2 ,e 3 ,e 4 ,e 5 ,e 6依次通过栈S,一个元素出栈后即进入队列Q,若出队的顺序为e 2 ,e 4 ,e 3 ,e 6 ,e 5 ,e 1 ,则栈S的容量至少应该为( )。
-
- A. 2
- B. 3
- C. 4
- D. 5
- 二.问题求解:(6 + 8 = 14分)
-
- 21. 在书架上放有编号为1 ,2 ,...,n的n本书。现将n本书全部取下然后再放回去,当放回去时要求每本书都不能放在原来的位置上。例如:n = 3时:
原来位置为:1 2 3
放回去时只能为:3 1 2 或 2 3 1 这两种
问题:求当n = 5时满足以上条件的放法共有_________种?(不用列出每种放法)
- 21. 在书架上放有编号为1 ,2 ,...,n的n本书。现将n本书全部取下然后再放回去,当放回去时要求每本书都不能放在原来的位置上。例如:n = 3时:
-
- 22. 设有一棵k叉树,其中只有度为0和k两种结点,设n0 ,nk ,分别表示度为0和度为k的结点个数,试求出n0 和nk之间的关系(n0 = 数学表达式,数学表达式仅含nk 、k和数字)。
_________
- 22. 设有一棵k叉树,其中只有度为0和k两种结点,设n0 ,nk ,分别表示度为0和度为k的结点个数,试求出n0 和nk之间的关系(n0 = 数学表达式,数学表达式仅含nk 、k和数字)。
- 三.阅读程序,写出正确的程序运行结果:(8 + 9 + 9 = 26分)
-
- 23.
-
program Gxp1; var i , n , jr , jw , jb : integer ; ch1: char ; ch: array[1..20] of char ; begin readln(n); for i:=1 to n do read(ch[i]); jr:=1; jw:=n; jb:=n; while (jr<=jw) do begin if (ch[jw]=’R’) then begin ch1:=ch[jr]; ch[jr]:=ch[jw]; ch[jw]:=ch1; jr:=jr+1; end else if ch[jw]=’W’ then jw:=jw-1; else begin ch1:=ch[jw]; ch[jw]:=ch[jb]; ch[jb]:=ch1; jw:=jw-1; jb:=jb-1; end end; for i:=1 to n do write(ch[1]); writeln; end. 输入:10 RBRBWWRBBR 输出:____①_____
-
- 24.
-
program Gxp2; var i , j , s ,sp1 : integer ; p: boolean ; a: array[1..10] of integer ; begin sp1:=1; a[1]:=2; j:=2; while sp1<10 do begin j:=j+1; p:=true; for i:=2 to j-1 do if (j mod i=0) then p:=false; if p then begin sp1:=sp1+1; a[sp1]:=j; end; end; j:=2; p:=true; while p do begin s:=1; for i:=1 to j do s:=s*a[i]; s:=s+1; for i:=2 to s-1 do if s mod i=0 then p:=false; j:=j+1; end; writeln(s); writeln; end. 输出:____①_____
-
- 25.
-
Program Gxp2 Var d1 , d2 , X , Min : real ; begin Min:=10000; X:=3; while X<15 do begin d1:=sqrt(9+(X-3)*(X-3)); d2:=sqrt(36+(15-X)*(15-X)); if(d1+d2)<Min then Min:=d1+d2; X:=x+0.001; end; writeln(Min:10:2); end. 输出:____①_____
- 四.完善程序:(15 + 15 = 30分)
-
- 26. 问题描述:工厂在每天的生产中,需要一定数量的零件,同时也可以知道每天生产一个零件的生产单价。在N天的生产中,当天生产的零件可以满足当天的需要,若当天用不完,可以放到下一天去使用,但要收取每个零件的保管费,不同的天收取的费用也不相同。
问题求解:求得一个N天的生产计划(即N天中每天应生产零件个数),使总的费用最少。
输入:N(天数 N<=29)每天的需求量(N个整数)
每天生产零件的单价(N个整数)
每天保管零件的单价(N个整数)
输出:每天的生产零件个数(N个整数)
例如:当N=3时,其需要量与费用如下:
生产计划的安排可以有许多方案,如下面的三种:
程序说明:
b[n]:存放每天的需求量
c[n]:每天生产零件的单价
d[n]:每天保管零件的单价
e[n]:生产计划
程序: -
program exp5; var i,j,n,yu,j0,j1,s : integer ; b,c,d,e: array[0..30] of integer ; begin readln(n); for i:=1 to n do readln(b[i],c[i],d[i]); for i:=1 to n do e[i]:=0; ____①_____ :=10000; c[n+2]=0; b[n+1]:=0 ;j0:=1; while (j0<=n) do begin yu:=c[j0]; j1:=j0; s:=b[j0]; while ____②_____ do begin ____③_____ ; j1:=j1+1; s:=s+b[j1]; end; ____④_____ ; j0:=j1+1; end; for i:=1 to n do ____⑤_____ ; readln; end.
- 26. 问题描述:工厂在每天的生产中,需要一定数量的零件,同时也可以知道每天生产一个零件的生产单价。在N天的生产中,当天生产的零件可以满足当天的需要,若当天用不完,可以放到下一天去使用,但要收取每个零件的保管费,不同的天收取的费用也不相同。
-
- 27. 问题描述:有n种基本物质(n≤10),分别记为P1,P2,……,Pn,用n种基本物质构造物质,这些物品使用在k个不同地区(k≤20),每个地区对物品提出自己的要求,这些要求用一个n位的数表示:a1a2……a n,其中:
ai = 1表示所需物质中必须有第i种基本物质
= -1表示所需物质中必须不能有第i种基本物质
= 0无所谓
问题求解:当k个不同要求给出之后,给出一种方案,指出哪些物质被使用,哪些物质不被使用。
程序说明:数组 b[1],b[2]……b[n] 表示某种物质
a[1..k,1..n] 记录k个地区对物品的要求,其中:
a[i,j]=1 表示第i个地区对第j种物品是需要的
a[i,j]=0 表示第i个地区对第j种物品是无所谓的
a[i,j]= -1 表示第i个地区对第j种物品是不需要的
程序: -
program gxp2; var i,j,k,n : integer ; p: boolean ; b: array[0..20] of 0..1 ; a: array[1..20,1..10] of integer ; begin readln(n,k); for i:=1 to k do begin for j:=1 to n do read(a[i,j]); readln; end; for i:=0 to n do b[i]:=0; p:=true; while ____①_____ do begin j:=n; while b[j]=1 do j:=j-1; ____②_____ ; for i:=j+1 to n do b[i]:=0; ____③_____ ; for i:=1 to k do for j:=1 to n do if (a[i,j]=1) and (b[j]=0) or ____④_____ ; then p:=true; end; if ____⑤_____ then writeln(‘找不到!’) else for i:=1 to n do if (b[i]=1) then writeln(‘物质’,i,’需要’) else writeln(‘物质’,i,’不需要’); end.
- 27. 问题描述:有n种基本物质(n≤10),分别记为P1,P2,……,Pn,用n种基本物质构造物质,这些物品使用在k个不同地区(k≤20),每个地区对物品提出自己的要求,这些要求用一个n位的数表示:a1a2……a n,其中: