第十三届全国青少年信息学奥林匹克联赛初赛试题及答案及答案 第十三届全国青少年信息学奥林匹克联赛初赛试题 C语言普级组答...

www.zhiqu.org     时间: 2024-06-01
NOIP2007第十三届普及组初赛试题
一、 单项选择题(共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.二→十进制转换码 B.美国信息交换标准代码
C.数字的二进制编码 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 D.4 6 5 3 1 7 2

二、问题求解(共2题,每题5分,共计10分)。
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,最短的走法共有多少种?___________
B

A
三、阅读程序写结果(共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[i]);
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[i]:=0;
n2:=round(sqrt(n));
for i:=2 to n2 do
if (a1[i]=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[i]=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[i];
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[i]; s[i]:=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[i][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第十三届普及组初赛试题参考答案
一、单项选择题:(每题1.5分)
题号 1 2 3 4 5 6 7 8 9 10
答案 D D C B B B B C C A
题号 11 12 13 14 15 16 17 18 19 20
答案 C A A A B D C D A A

二、问题求解:(每题 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)

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

NOIP2007年提高组(Pascal语言)参考答案与评分标准
一、单项选择题:(每题1.5分)
1. D 2. E 3. D 4. B 5. A
6. B 7. D 8. B 9. D 10. A
二、 不定项选择题 (共10题,每题1.5分,共计15分。每题正确答案的个数大于或等于1。多选或少选均不得分)。 11. ABC 12. AD 13. ABD 14. ABD 15. BC
16. ABD 17. AB 18. CD 19. BC 20. AC
三、问题求解:(共2题,每题5分,共计10分) 1.350
2.289
四、阅读程序写结果(共4题,每题8分,共计32分)
1 129,43
2 No.1:3,6 No.2:3,6
3 2 3 5 7 11 13 17 19 23 29
31 37 41 43 47
4 No.1: XTORSEAAMPLE No.2: AAEELMOPRSTX
五.完善程序 (前5空,每空2分,后6空,每空3分,共28分)
(说明:以下各程序填空可能还有一些等价的写法,各省可请本省专家审定和上机验证,不一定上报科学委员会审查)
1 ① bound*2
② exit
③ j:=0
④ (j mod b-(b div 2))=0
⑤ downto 1
2 ① x[i-2]*(m-1)
② j+x[i-1]*k
③ j+x[i-1]*k (同2)
④ r-1
⑤ x[i-1]+1
⑥ backtrace(i+1,r)

NOIP2007年普及组(Pascal语言)参考答案与评分标准
一、单项选择题:(每题1.5分)
1. D 2. D 3. C 4. B 5. B 6.B 7. B 8. C
9. C 10. A
11. C 12. A 13. A 14. A 15. B 16. D 17. C 18. D
19. A 20. A 二、问题求解:(每题 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)

两次交换交换的都是地址,指针所指向的内容并没有改变……


#干湛魏# 2013安徽省信息学竞赛试题(小学组)第三题题解 -
(18792391477): n,m的范围都只有 300 , 三次方的枚举显然是可以过的 我们用 map[i][j]来记录每个各自中的糖果数量,对与被老鼠咬过的格子我们把这个格子的糖果数量改成一个很小的负数( 比如 -10000000 ) 这样问题就转为了求一个和最大的子矩阵 预处理...

#干湛魏# 信息学初赛试题 -
(18792391477): 竞赛题目?怎么像期末考试题,花了一个多小时才完成,题目很简单,答案仅供参考.1、用8位二进制定点整数或定点小数写出下列真值的原码、补码形式,然后用2位十六进制数表示. (1)11001B 原码:0001 1001 十六进制:19 补码:0001 ...

#干湛魏# 如何证明素数又无穷多个? - 作业帮
(18792391477):[答案] 素数与公因数 1、素数 我们知道,大于1,并且除1和它本身外没有其他因数的自然数叫素数(或质数) 2是最小的素数,除... 第八届全国青少年信息学奥林匹克联赛(NOIP2002)提高组初赛试题第三题第2小题,写程序运行结果,程序要找的就是形...

#干湛魏# 高中信息学联赛经典题型(pascal) -
(18792391477): 第八届全国青少年信息学奥林匹克联赛(NOIP2002)初赛试题(提高组 PASCAL语言 二小时完成)审定:全国青少年信息学奥林匹克竞赛科学委员会主管:中国科协、教育部主办:中国计算机学...

#干湛魏# 前缀表达式"+3*2+5 12"的值是多少? - 作业帮
(18792391477):[答案] 你在做noip2010第十六届全国青少年信息学奥林匹克联赛初赛吧 答案是35

#干湛魏# 天津塘沽有离第十三大街最近的医院吗?
(18792391477): 第五大街泰丰家园社区医院相对比较近.

#干湛魏# noip2010初赛试题 一定要问题配答案! -
(18792391477): CCF NOIP2010提高组(Pascal语言)参考答案与评分标准 一、单项选择题(共10题,每题1.5分,共计15分) 1 2 3 4 5 6 7 8 9 10 C A A D B D C B C B 二、不定项选择题(共10题,每题1.5分,共计15分,多选或少选均不得分) 1 2 3 4 5 6 ...

#干湛魏# 苹果13pro用了不到一年电池只有89
(18792391477): 属于正常一年掉百分之十到二十左右.按照苹果的规定, 电池健康度在1年之内保持在80%以上就算正常. 如果觉得健康度下降过快,可以使用原装的5W充电器充电,因为这种充电器的功率较低,充电时不容易产生较高的热量,从而有利于保护电池.平时在使用手机的时候也应当注意不要长时间让手机在发热状态下运行,也不要等手机电量完全用尽后再充电.

#干湛魏# 山东省青岛市平度市店子镇旺村邮编是什么?
(18792391477): 山东省青岛市平度市店子镇旺村邮编是266753

#干湛魏# 苹果13pro升级后锁屏变了
(18792391477): 苹果13pro的升级后锁屏变了的原因和解决方法:苹果13pro更新屏幕不一样的原因如下应该是锁屏不一样,ios16壁纸和锁屏使用者可以自行设置自己喜欢的不同的图案,不一定非要一样,并且系统对此也没有强制性要求.iOS 16系统锁屏界面的另一大升级点,就是个性化.苹果希望锁屏界面的任何细节,都由用户说了算.我们只需长按锁屏界面,点击页面底部的“自定”,就可以快速修改日期、时间、组件三个模块.