文档介绍:该【2025年第十四届全国青少年信息学奥林匹克联赛初赛试题及答案 】是由【小屁孩】上传分享,文档一共【8】页,该文档可以免费在线阅读,需要了解更多关于【2025年第十四届全国青少年信息学奥林匹克联赛初赛试题及答案 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。 : .
以家为家,以乡为乡,以国为国,以天下为天下。——《管子》
第十四届全国青少年信息学奥林匹克联赛初赛试题
( 普及组 Pascal语言 二小时完成 )
●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●
一、单项选择题(共 20 题,。每题有且仅有一个正确答案。)
1.微型计算机中,控制器的基本功能是()。
A .控制机器各个部件协调工作B .实现算术运算和逻辑运算
C .获取外部信息 D .存放程序和数据
2.设 A=True,B=False,C=True ,D=False ,以下逻辑运算表达式值为真的是( )。
A .(A∧B)∨(C∧D ∨﹁A) B .((﹁A ∧B) ∨C)∧﹁D
C .(B∨C ∨D) ∧D ∧A D .A ∧(D ∨﹁C )∧B
3.在下列关于图灵奖的说法中,不正确的是( )。
A .图灵奖是美国计算机协会于 1966 年设立的,专门奖励那些对计算机事业作出重要贡献的个人
B .图灵奖有“计算机界诺贝尔奖”之称
C .迄今为止,还没有华裔计算机科学家获此殊荣
D .图灵奖的名称取自计算机科学的先驱、英国科学家阿兰 •图灵
4.计算机在工作过程中,若突然停电,( )中的信息不会丢失。
A .ROM 和 RAM B .CPU C .ROM D .RAM
5.完全二叉树共有 2*N-1 个结点,则它的叶节点数是( )。
A .N-1 B .N C .2*N D .2N-1
6.在以下各项中,( )不是操作系统软件。
A .SolarisB .LinuxC .Windows VistaD .Sybase
7.设栈 S 的初始状态为空,元素 a,b,c,d,e,f依次入栈 S ,出栈的序列为 b,d,f,e,c,a,则栈
S 的容量至少应该是( )。
A .6 B .5 C .4 D .3
8.与十进制数 相等的四进制数是( )。
A . B . C . D .
9.设字符串 S=”Olympic”,S 的非字串的数目是( )。
A .28 B .29 C .16 D .17
10. 是近年来互联网的热门概念之一,其核心思想是互动与分享。下列网站中,( )是典型的
Web 。
A .Sina B .FlickerC .Yahoo D .Google
11.递归过程或函数调用时,处理参数和返回地址,通常使用一种称为( )的数据结构。
A .队列 B .多维数组 C .线性表 D .栈 : .
博观而约取,厚积而薄发。——苏轼
12.(2008)10+(5B)16 的结果是( )。
A .(833)16 B .(2089)10 C .(4163)8 D .(100001100011)2
13.二叉树 T,已知其先根遍历是 1 2 4 3 5 7 6(数字为节点的编号,下同),中根遍历 2 4 1 5 7 3 6,则
该二叉树的后根遍历是( )。
A .4 2 5 7 6 3 1 B .4 2 7 5 6 3 1 C .7 4 2 5 6 3 1 D .4 2 7 6 5 3 1
14.将数组{8,23,4,16,77,-5,53,100}中的元素按从小到大的顺序排列,每次可以交换任意两个
元素,最少需要交换()次。
A .4 B .5 C .6 D .7
15.对有序数组{5,13,19,21,37,56,64,75,88,92,100}进行二分查找,成功查找元素19 的
查找长度(比较次数)是()。
A .1 B .2 C .3 D .4
16 .面向对象程序设计(Object-OrientedProgramming )是一种程序设计的方法论,它将对象作为程序
的基本单元,将数据和程序封装在对象中,以提高软件的重用性、灵活性和扩展性。下面关于面向对象设
计的说法中,不正确的是( )
A .面向对象程序设计通常采用自顶向下设计方法进行设计。
B .面向对象程序设计方法具有继承性(inheritance)、封装性(encapsulation)、多态性 (polymorphism)
等几大特点。
C .支持面向对象特性的语言称为面向对象的编程语言,目前较为流行的有 C++ ,JAVA ,C# 等。
D .面向对象的程序设计的雏形来自于 Simula 语言,后来在 SmallTalk语言的完善和标准化的过程中得到
更多的扩展和对以前思想的重新注解。至今,SmallTalk语言仍然被视为面向对象语言的基础
17.在 32*32 点阵的“字库 ”中,汉字“北”与“京”的字模占用字节数之和是( )。
A .512 B .256 C .384 D .128
18.设 T 是一棵有 n 个顶点的树,下列说法不正确的是()。
A .T 有 n 条边 B .T 是连通的 C .T 是无环的 D .T 有 n-1条边
19.下列不属于 NOIP 竞赛推荐使用的语言环境的是( )。
A .Dev-C++ B .VisualC++ C .Free Pascal D .Lazarus
20.在 Pascal程序中,表达式( 200 or10)的值是( )。
A .20 B .1 C .220 D .202
二、问题求解(共 2 题,每题 5 分,共计 10 分)
1.书架上有 4 本不同的书 A 、B 、C 、D 。其中 A 和 B 是红皮的, C 和 D 是黑皮的。把这 4 本书摆在书架
上,满足所有黑皮的书都排在一起的摆法有 _________ 种。满足 A 必须比 C 靠左,所有红皮的书要摆在一
起,所有黑皮的书要摆放在一起,共有 _________ 种摆法。
2.有 6 个城市,任何两个城市之间都有一条道路连接, 6 个城市两两之间的距离如下表所示,则城市 1 到 : .
操千曲尔后晓声,观千剑尔后识器。——刘勰
城市 6 的最短距离为__________________ 。
城市 1 城市 2 城市 3 城市 4 城市 5 城市 6
城市 1 0 2 3 1 12 15
城市 2 2 0 2 5 3 12
城市 3 3 2 0 3 6 5
城市 4 1 5 3 0 7 9
城市 5 12 3 6 7 0 2
城市 6 15 12 5 9 2 0
三、阅读程序写结果(共4 题,每题8 分,共计32 分)
1.VAR i,a,b,c,d:integer;
f:array[0..3]ofinteger;
BEGIN
fori:=0to3 do
read(f[i]);
a:=f[0]+f[1]+f[2]+f[3];
a:=adivf[0];
b:=f[0]+f[2]+f[3];
b:=bdiva;
c:=(b*f[1]+a)divf[2];
d:=f[(bdivc)mod 4];
if(f[(a+b+c+d)mod 4]>f[2])then
begin
a:=a+b;
writeln(a);
end else
begin
c:=c+d;
writeln(c);
end;
END.
输入:9 19 29 39
输出:__________________________
2.procedurefoo(a,b,c:integer);
begin
ifa>b thenfoo(c,a,b)
elsewriteln(a,',',b,',',c);
end;
var
a,b,c:integer;
begin : .
人人好公,则天下太平;人人营私,则天下大乱。——刘鹗
read(a,b,c);
foo(a,b,c);
end.
输入:3 1 2
输出:_________________________
3.typeTT=array[0..20]ofinteger;
prodecurefunc(varary:TT;n:integer);
var i,j,x:integer;
begin
i:=0;j:=n-1;
whilei<jdo begin
while(i<j)and (ary[i]>0)do inc(i);
while(i<j)and (ary[j]<0)do dec(j);
ifi<jthenbegin x:=ary;
ary[i]:=ary[j];
ary[j]:=x;
inc(i);
dec(j);
end;
end;
end;
var
a:TT;
i,m:integer;
begin
m:=10;
fori:=0tom-1 do
read(a[i]);
func(a,m);
fori:=0 tom-1 do
write(a,'');
writeln;
end.
输入:5 4 -6-11 6 -59 22 -61 10
输出:___________________________________________
4.proceduresolve(first:string;spos_f,epos_f:integer;mid:string;spos_m,epos_m:integer);
var i,root_m:integer;
begin
ifspos_f> epos_f thenexit; : .
博观而约取,厚积而薄发。——苏轼
fori:=spos_m toepos_m do
iffirst[spos_f]=mid[i]thenbegin
root_m:=i;
break;
end;
solve(first,spos_f+1,spos_f+(root_m-spos_m),mid,spos_m,root_m-1);
solve(first,spos_f+(root_m-spos_m)+1,epos_f,mid,root_m+1,epos_m);
write(first[spos_f]);
end;
var first,mid:string;
len:integer;
begin
readln(len);
readln(first);
readln(mid);
solve(first,1,len,mid,1,len);
writeln;
end.
输入:7
ABDCEGF
BDAGECF
输出:_________________________________
四.完善程序(前四空,每空 ,后 6 空,每空3 分,共 28 分)
1.(字符串替换)给定一个字符串 S(S 仅包含大小写字母),下面的程序将 S 中的每个字母用规定的字
母替换,并输出 S 经过替换后的结果。程序的输入是两个字符串,第一个字符串是给定的字符串 S ,第二
个字符串 S’由 26 个字母组成,它是 a~z 的任一排列,大小写不定,S’规定了每个字母对应的替换字母:S’
中的第一个字母是字母A 和 a 的替换字母,即 S 中的 A 用该字母的大写替换,S 中的 a 用该字母的小写
替换;S’中的第二个字母是字母B 和 b 的替换字母,即S 中的 B 用该字母的大写替换,S 中的 b 用该字
母的小写替换;… …以此类推。
Var change:string;
Str:string;
Procedure CheckChangeRule;
Var i:integer;
Begin
fori:=1to26 do begin
if