nbhkdz.com冰点文库

第十三届全国青少年信息学奥林匹克联赛初赛(普及组Pascal)试题及答案

时间:


第十三届全国青少年信息学奥林匹克联赛初赛试题 ( 普及组 Pascal 语言 二小时完成) ● ● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●● 一、 单项选择题(共 20 题,每题 1.5 分,共计 30 分。每题有且仅有一个正确答案。 ) 1. 在以下各项中, )不是 CPU 的组成部分。 ( A.控制器 B.运算器 C.寄存器 D.主板 2.在关系数据库中,存放在数据库中的数据的逻辑结构以( )为主。 A.二叉树 B.多叉树 C.哈希表 D.二维表 3.在下列各项中,只有( )不是计算机存储容量的常用单位。 A.Byte B.KB C.UB D.TB 4.ASCII 码的含义是( ) 。 A.二→十进制转换码 C.数字的二进制编码

B.美国信息交换标准代码 D.计算机可处理字符的唯一编码

5.一个完整的计算机系统应包括( ) 。 A.系统硬件和系统软件 B.硬件系统和软件系统 C.主机和外部设备 D.主机、键盘、显示器和辅助存储器 6.IT 的含义是( ) 。 A.通信技术 B.信息技术 C.网络技术 D.信息学 7.LAN 的含义是( ) 。 A.因特网 B.局域网

C.广域网

D.城域网

8. 冗余数据是指可以由其它数据导出的数据。例如,数据库中已存放了学生的数学、语文和英语的三科 成绩,如果还存放三科成绩的总分,则总分就可以看作冗余数 据。冗余数据往往会造成数据的不一致。 例如,上面 4 个数据如果都是输入的,由于操作错误使总分不等于三科成绩之和,就会产生矛盾。下面关 于冗余数据的说法 中,正确的是( ) 。 A.应该在数据库中消除一切冗余数据 B.用高级语言编写的数据处理系统,通常比用关系数据库编写的系统更容易消除冗余数据 C.为了提高查询效率,在数据库中可以保留一些冗余数据,但更新时要做相容性检验 D.做相容性检验会降低效率,可以不理睬数据库中的冗余数据 9.在下列各软件,不属于 NOIP 竞赛(复赛)推荐使用的语言环境有( ) 。 A.gcc B.g++ C.Turbo C D.Free Pascal 10.以下断电后仍能保存数据的有( ) 。 A.硬盘 B.高速缓存 C.显存 D.RAM 11.在下列关于计算机语言的说法中,正确的有( ) 。 A.高级语言比汇编语言更高级,是因为它的程序的运行效率更高 B.随着 Pascal、C 等高级语言的出现,机器语言和汇编语言已经退出了历史舞台

C.高级语言比汇编语言程序更容易从一种计算机上移植到另一种计算机上 D.C 是一种面向对象的高级计算机语言 12.近 20 年来,许多计算机专家都大力推崇递归算法,认为它是解决较复杂问题的强有力的工具。在下 列关于递归算法的说法中,正确的是( ) 。 A.在 1977 年前后形成标准的计算机高级语言“FORTRAN77”禁止在程序使用递归,原因之一是该方法可 能会占用更多的内存空间 B.和非递归算法相比,解决同一个问题,递归算法一般运行得更快一些 C.对于较复杂的问题,用递归方式编程一般比非递归方式更难一些 D.对于已经定义好的标准数学函数 sin(x),应用程序中的语句“y=sin(sin(x));”就是一种递归调用 13.一个无法靠自身的控制终止的循环成为“死循环”,例如,在 C 语言程序中,语句“while(1) printf(“*”);” 就是一个死循环,运行时它将无休止地打印*号。下面关于死循环的说法中,只有( )是正确的。 A.不存在一种算法,对任何一个程序及相应的输入数据,都可以判断是否会出现死循环,因而,任何编 译系统都不做死循环检查 B.有些编译系统可以检测出死循环 C.死循环属于语法错误,既然编译系统能检查各种语法错误,当然也应该能检查出死循环 D.死循环与多进程中出现的“死锁”差不多,而死锁是可以检测的,因而,死循环也可以检测的 14.在 Pascal 语言中,表达式 (23 or 2 xor 5)的值是( ) 。 A.18 B.1 C.23 D.32 15.在 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) 16. 地面上有标号为 A、B、C 的三根柱,在 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 17.与十进制数 1770 对应的八进制数是( ) 。 A.3350 B.3351 C.3352 D.3540

18.设 A=B=True,C=D=False,一下逻辑运算表达式值为假的有( ) 。 A.(﹁A∧B)∨(C∧D∨A) B.﹁(((A∧B)∨C)∧D) C.A∧(B∨C∨D)∨D D.(A∧(D∨C))∧B 19.(2070)16 + (34)8 的结果是( ) 。 A. (8332)10 B. (208A)16

C. (100000000110)2

D.(20212)8

20.已知 7 个节点的二叉树的先根遍历是 1 2 4 5 6 3 7(数字为节点的编号,以下同) ,中根遍历是

4 2 6 5 1 7 3,则该二叉树的后根遍历是( ) 。 A.4 6 5 2 7 3 1 B.4 6 5 2 1 3 7 C.4 2 3 1 5 4 7 二、问题求解(共 2 题,每题 5 分,共计 10 分) 。

D.4 6 5 3 1 7 2

1、 (子集划分)将 n 个数(1,2,…,n)划分成 r 个子集。每个数都恰好属于一个子集,任何两个不同 的子集没有共同的数,也没有空集。将不同划分方法的总数 记为 S(n,r)。例如,S(4,2)=7,这 7 种不同的 划分方法依次为{(1),(234)},{(2),(134)},{(3),(124)}, {(4),(123)},{(12),(34)},{(13),(24)},{(14),(23)}。 当 n=6,r=3 时,S(6,3)= ______________。 (提示:先固定一个数,对于其余的 5 个数考虑 S(5,3)与 S(5,2),再分这两种情况对原固定的数进行分析。 ) 2、 (最短路线)某城市的街道是一个很规整的矩形网络(见下图) ,有 7 条南北向的纵街,5 条东西向的横 街。现要从西南角的 A 走到东北角的 B,最短的走法共有多少种?___________ (图画不了) 三、阅读程序写结果(共 4 题,每题 8 分,共计 32 分。 ) 1、program j301; var i,a,b,c,x,y:integer; p:array[0..4] of integer; begin y:=20; for i:=0 to 4 do read(p); readln; a:=(p[0]+p[1])+(p[2]+p[3]+p[4]) div 7; b:=p[0]+p[1] div ((p[2]+p[3]) div p[4]); c:=p[0]*p[1] div p[2]; x:=a+b-p[(p[3]+3) mod 4]; if (x>10) then y:=y+(b*100-a) div (p[p[4] mod 3]*5) else y:=y+20+(b*100-c) div (p[p[4] mod 3]*5); writeln(x,',',y); end. {注:本例中,给定的输入数据可以避免分母为 0 或数组元素下表越界。} 输入:6 6 5 5 3 输出:______________________ 2、program j302; var a,b:integer; var x,y:^integer; procedure fun(a,b:integer); var k:integer; begin k:=a; a:=b; b:=k; end; begin a:=3; b:=6; x:=@a; y:=@b; fun(x^,y^); writeln(a,',',b);

end. 输出:_______________________________ 3、program j303; var a1:array[1..50] of integer; var i,j,t,t2,n,n2:integer; begin n:=50; for i:=1 to n do a1:=0; n2:=round(sqrt(n)); for i:=2 to n2 do if (a1=0) then begin t2:=n div i; for j:=2 to t2 do a1[i*j]:=1; end; t:=0; for i:=2 to n do if (a1=0) then begin write(i:4); inc(t); if (t mod 10=0) then writeln; end; writeln; end. 输出:_____________________________________________ _____________________________________________ 4、Program j304; Type str1=string[100]; Str2=string[200]; Var S1:str1; s2:str2; Function isalpha(c:char):Boolean; Var i:integer; Begin i:=ord(c); if ((i>=65) and (i<=90)) or ((i>=97) and (i<=122)) then isalpha:=true else isalpha:=false; end; function isdigit(c:char):Boolean; var i:integer; begin i:=ord(c); if (i>=48) and (i<=57) then isdigit:=true else isdigit:=false;

end; procedure expand(s1:str1;var s2:str2); var i,j:integer; a,b,c:char; begin j:=1; c:=char(1); i:=0; while (i<=ord(s1[0])) do begin inc(i); c:=s1; if c='-' then begin {1} a:=s1[i-1]; b:=s1[i+1]; if (isalpha(a) and isalpha(b)) or (isdigit(a) and isdigit(b)) then begin dec(j); while (ord(upcase(a))<ord(upcase(s1[i+1]))) do begin s2[j]:=a; inc(j); inc(a); end; end else begin s2[j]:=c; inc(j); end; end{1} else begin s2[j]:=c; inc(j); end; end; s2[0]:=char(j-2); end; begin readln(s1); expand(s1,s2); writeln(s2); end. 输入:wer2345d-h454-82qqq 输出:__________________________ 四、完善程序(前 4 空,每空 2.5 分,后 6 空,每空 3 分,共 28 分) 。 1、 (求字符的逆序)下面的程序的功能是输入若干行字符串,每输入一行,就按逆序输出该行,最后键入 -1 终止程序。 请将程序补充完整。 Program j401; type str1=string[100]; var line:str1; kz:integer; procedure reverse(var s:str1); var I,j:integer; t:char; begin i:=1; j:=length(s); while (i<j) do begin t:=s; s:=s[j]; s[j]:=t; ; ; end; end; begin writeln(‘continue? -1 for end.’); readln(kz); while ( )do begin readln(line); ;

writeln(line); writeln(‘continue? -1 for end.’); readln(kz); end; end. 2 2 3 3 2 -1 1 3 4 1 1 5 4 4 5 5 2、 (棋盘覆盖问题)在一个 2k×2 k 个方格组成的棋盘中恰有一个方格与其它方格不同(图中标记为-1 的方格) ,称之为特殊方格。现用 L 型(占 3 个小方格) 纸片覆盖棋盘上除特殊方格的所有部分,各纸片 不得重叠,于是,用到的纸片数恰好是(4 k-1)/3。在下表给出的一个覆盖方案中,k=2,相同的 3 各数 字 构成一个纸片。 下面给出的程序使用分治法设计的,将棋盘一分为四,依次处理左上角、右上角、左下角、右下角,递 归进行。请将程序补充完整。 (图画不了...郁闷) Program j402; type arr1=array[1..65] of integer; arr2=array[1..65] of arr1; var board:arr2; tile:integer; size,dr,dc:integer; procedure chessboard(tr,tc:integer; dr,dc:integer; var size:integer); var t,s:integer; begin if (size=1) then ; t:=tile; inc(tile); s:=size div 2; if then chessboard(tr,tc,dr,dc,s) else begin board[tr+s-1]:=t; end; if (dr<tr+s) and (dc>=tc+s) then chessboard(tr,tc+s,dr,dc,s) else begin board[tr+s-1][tc+s]:=t; ; end; if (dr>=tr+s) and (dc<tc+s) then chessboard(tr+s,tc+s,dr,dc,s) else begin board[tr+s][tc+s]:=t; ; end; if (dr>=tr+s) and (dc>=tc+s) then chessboard(tr+s,tc+s,dr,dc,s) else begin board[tr+s][tc+s]:=t; ; end; end; procedure prt1(n:integer); var I,j:integer; begin for I:=1 to n do begin for j:=1 to n do write(board[j]:3);

writeln; end; end; begin writeln(‘input size(4/8/16/64):’); readln(size); writeln(‘input the position of special block(x,y):’); readln(dr,dc); board[dr][dc]:=-1; tile:=1; chessboard(1,1,dr,dc,size); prt1(size); end. NOIP2007 年普及组(Pascal 语言)参考答案与评分标准 一、单项选择题: (每题 1.5 分) 题号 1 2 3 4 5 6 7 8 9 答案 D D C B B B B C 题号 11 12 13 14 15 16 17 答案 C A A A B D C 二、问题求解: (每题 5 分) 1.90 2.210 三、阅读程序写结果 1. 15, 46(对 1 个数给 4 分,无逗号扣 1 分) 2. 3, 6 3. 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 4. wer2345defgh45456782qqq 四、完善程序(前 4 空(①--④) ,每空 2.5 分,后 6 空(⑤--⑩) ,每空 3 分) 1. ① inc(i) 或 i:=i+1 ② dec(j) 或 j:=j-1 ③ kz<>-1 ④ reverse(line) 2. ⑤ exit ⑥ (dr<tr+s)and(dc<tc+s) ⑦ chessboard(tr,tc,tr+s-1,tc+s-1,s) ⑧ chessboard(tr,tc+s,tr+s-1,tc+s,s) ⑨ chessboard(tr+s,tc,tr+s,tc+s-1,s) ⑩ chessboard(tr+s,tc+s,tr+s,tc+s,s)

10 C A 18 19 20 D A A


赞助商链接

第二十二届全国青少年信息学奥林匹克联赛初赛普及组Pas...

暂无评价|0人阅读|0次下载|举报文档第二十二届全国青少年信息学奥林匹克联赛初赛普及组Pascal试题_学科竞赛_初中教育_教育专区。 文档...

...二十届全国青少年信息学奥林匹克联赛初赛(普及组试...

NOIP(2014)第二十届全国青少年信息学奥林匹克联赛初赛(普及组试题及答案) 第二十届全国青少年信息学奥林匹克联赛初赛( 普及组 Pascal 语言 二小时完成 ) ●● ...

2016年-第二十二届全国青少年信息学奥林匹克联赛初赛普...

2016年-第二十二届全国青少年信息学奥林匹克联赛初赛普及组Pascal语言真题试卷 第二十二届全国青少年信息学奥林匹克联赛初赛普及组 Pascal 语言试题 竞赛时间:2016 年...

第十二届全国青少年信息学奥林匹克联赛初赛试题

第十二届全国青少年信息学奥林匹克联赛初赛试题 ( 普及组 Pascal 语言 二小时完成 )●● ●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 一、 单项...

...届全国青少年信息学奥林匹克联赛初赛试题及答案(Pas...

第十六届全国青少年信息学奥林匹克联赛初赛试题及答案(Pascal普及组)_教学案例/设计_教学研究_教育专区。第十六届全国青少年信息学奥林匹克联赛初赛试题及答案(Pascal...

第十八届全国青少年信息学奥林匹克联赛初赛试卷与答案(...

第十八届全国青少年信息学奥林匹克联赛初赛试卷与答案(pascal)_学科竞赛_初中教育_教育专区。noip2012普及组初赛试题答案,第一时间上传,欢迎下载,第三和第四题还...

NOIP2015普及组初赛试题及答案(Pascal)

NOIP2015普及组初赛试题及答案(Pascal)_学科竞赛_初中教育_教育专区。第二十一届全国青少年信息学奥林匹克联赛初赛普及组 Pascal 语言试题 竞赛时间:2015 年 10 月...

NOIP2016年第二十二届全国青少年信息学奥林匹克联赛提...

第二十二届全国青少年信息学奥林匹克联赛初赛提高组 Pascal 语言试题 竞赛时间:2016 年 10 月 22 日 14:30~16:30 选手注意: ? 试题纸共有 13 页,答题纸共...

...(pascal)第九届全国青少年信息学奥林匹克联赛初赛试...

第九届全国青少年信息学奥林匹克联赛初赛试题 (普及组 PASCAL 语言 二小时完成) ●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●一.选择一个...

第十二届全国青少年信息学奥林匹克联赛初赛试题普及组

第十二届全国青少年信息学奥林匹克联赛初赛试题( 普及组 Pascal 语言 二小时完成 )●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●一、 单项...