少儿信息学奥林匹克竞赛试题【模拟Ⅰ】
(小学组PASCAL语言 二小时完成)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
1)在计算机领域中,通常用英文单词“BYTE”来表示(D)
A) 字 B) 字长 C) 二进制位 D) 字节
2)计算机所具有的存储程序和程序原理是谁提出来的(C)
A) 图灵 B) 布尔 C) 冯·诺依曼 D) 爱因斯坦
3)当前,3.5英寸高密软盘的容量是(D)
A) 1.0MB B) 1.2MB C) 1.4MB D) 1.44MB
4)在击键时,左手无名指应放在什么键上(D)
A) S键 B) D键 C) J键 D) K键
5)在计算机内部用来传送、存贮、加工处理的数据或指令(命令)都是以什么形式进行的(C)
A) 十进制码 B) 智能拼音码 C) 二进制码 D) 五笔字型码
6)下面列出的四项中,不属于计算机病毒特征的是(D)
A) 潜伏性 B) 激发性 C) 传播性 D) 免疫性
7)二进制数1110111.11转换成十进制数是(D)
A) 119.125 B) 119.3 C) 119.375 D) 119.75
8)以下列举Internet的各种功能中,错误的是(A)
A) 编译程序 B) 传送电子邮件 C) 查询信息 D) 数据库检索
9)电子邮件地址的一般格式为(C)
A) 用户名@域名 B) 域名@用户名 C) IP地址@域名 D) 域名@ IP地址
10)下面是某单位的主页的Web地址URL,其中符合URL格式的是(A)
A) www.jnu. B) Http//www.jnu.
C) Http://www.jnu. D) Http:www.jnu.
11)下面哪个是PASCAL源程序的扩展名(C)
A) .pascal B).exe C).pas D).doc
12)在turbo pascal中编程,编译程序和执行程序的快捷键分别是(B)
A) F10和F5 B) ALT+F9 和CTRL+F9
C) ALT+F5 和 CTRL+F5 D) ALT+F 和CTRL+F9
13)在turbo pascal中编译程序时显示“Error 3:Unknown idintifient”错误,原因是(C)
A) begin和end不配对 B) 语句末尾缺少“;”
C) 使用未经定义的变量 D) 编译前未保存文件
14)满二叉数的结点个数为11,则它的叶结点个数为(C)
A) 4 B) 5 C) 6 D) 12
15)设栈的初始为空,元素a,b,c,d,e,f,g依次入栈,以下出栈序列不可能出现的是( )
A) a,b,c,d,e,f,g B) f,c,a,b,e,g,d
C) d,c,f,e,b,a,g D) a,e,d,c,b,f,g
二.问题求解:(5+5=10分)
1.国王分财产。一个国王临终前给儿子们分财产。他把财产分为若干份,然后给第一个儿子一份,再加上剩余财产的1/10;给第二个儿子两份,再加上剩余财产的1/10;……;给第i个儿子i份,再加上剩余财产的1/10。每个儿子都窃窃自喜。以为得到了父王的偏爱,孰不知国王是“一碗水端平”的。请问:老国王共有几个儿子?财产共分成了多少份?
2.智得奖品。12个人围成一圈,希望得到一份奖品。奖品得主按下面的要求产生:从第1个人开始,1~3报数,报到3的人走出圈;从他后面的人开始,重新1~3报数,报到3的人再走出圈。如此重复直到圈中只剩1人,他就是获奖者。小红根据规则,动了一下脑筋,最后如愿以偿获得了奖品。请问她开始时站在哪个位置?
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.program test1;
var d, p: integer;
Begin
p:=1; d:=11;
while d>1 do
begin
p:=2*(p+1);
d:=d-1
end;
writeln (p)
End.
输出:
2.program test2;
function fun(x:integer):integer;
begin
if (x=0) or (x=1) then fun :=3
else fun:=x-fun(x-2)
end;
Begin
writeln(fun(9));
readln;
End.
输出:
3. program test3;
var n,s,i,x:integer;
Begin
n:=1; s:=0;
for i:=1 to 10 do
begin
read(x);
if (x>=1)and (x<= 10)then
begin n:=n*x; s:=s+x; end;
end;
if (n=3628800)and (s=55)then write(‘YES’) else write(‘NO’);
End.
输入:7 4 8 6 5 9 2 1 10 3
输出:
4. program test4;
var
a,b:array[1..32] of integer;
i: integer;
procedure ssort( i ,j: integer);
var
m, k, x: integer;
begin
if j-i>1 then
begin
m:=(i+j) div 2;
ssort(i,m);
ssort(m+1,j);
k:=i;
for x:=i to m do
begin
b[k]:=a[x]; b[k+1]:=a[m+x-i+1];
k:=k+2;
end;
for x:=i to j do a[x]:=b[x];
end;
end;
begin
for i:=1 to 16 do a[i]:=i;
ssort(1,16);
for i:= 1 to 16 do write(a[i]:3);
writeln;
end.
输出:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1. 输入 n 个 0 到 100 之间的整数,由小到大排序输出,每行输出8个。(3+2+3+2+2=12分)
请完善下面程序:
program test5;
var I,J,K,N,X:integer;
B:ARRAY[0..100] of integer;
Begin
readln(N);
for I:=0 to 100 do B[I]:=0;
for I:=1 to N do
begin
readln(X);
B[X]:= ① ;
end;
② ;
for I:=0 to 100 do
while ③ do
begin
write( ④ );
K:=K+1;
B[I]:=B[I]-1;
if ⑤ then writeln;
end;
readln;
End.
2. 【四色问题】(3+3+3+3+3+3=18分)
人人都熟悉地图,可是绘制一张普通的政区图,至少需要几种颜色,才能把相邻的政区或区域通过不同的颜色区分开来,就未必是一个简单的问题了。
这个地图着色问题,是一个著名的数学难题。对于一张政区图,无论从哪里开始着色,至少都要用上四种颜色,才能把所有省份都区别开来。所以,很早的时候就有数学家猜想:"任何地图的着色,只需四种颜色就足够了。"这就是"四色问题"这个名称的由来。
数学史上正式提出"四色问题"的时间是在1852年。当时伦敦的大学的一名学生法朗西斯向他的老师、著名数学家、伦敦大学数学教授莫根提出了这个问题,可是莫根无法解答,求助于其它数学家,也没有得到答案。于是从那时起,这个问题便成为数学界的一个"悬案"。
一直到二十年前的1976年9月,《美国数学会通告》正式宣布了一件震撼全球数学界的消息:美国伊利诺斯大学的两位教授阿贝尔和哈根,利用电子计算机证明了"四色问题"这个猜想是完全正确的!他们将普通地图的四色问题转化为2000个特殊图的四色问题,然后在电子计算机上计算了足足1200个小时,最后成功地证明了四色问题。
现在,就让我们也来当一当解决“悬案”的高手:
〖问题描述〗
设有如下图所示的地图,每个区域代表一个省,区域中的数字代表省的编号,将每个省涂上红(R),蓝(B),白(W),黄(Y)四种颜色之一,使相邻的省份有不同的颜色。
〖题目分析〗
这是一道非常典型的回溯题目。解法与“八皇后问题”如出一辙。在填写每一个省的颜色时检查与相邻已填省份的颜色是否相同。如果不同,则填上;如果相同(冲突),则另选一种;如果已没有颜色可供选择,则回溯到上一省份。重复这一过程,直到所有省的颜色都已填上。
最主要的问题在于如何解决相邻省的颜色冲突。对每一个省份,可供选择的颜色一共有四种;对省份I来说颜色X可填的条件是编号为1~(I-1)且与省I相邻的省份的颜色都不是X;冲突的条件为 (a[i,k]=1) and (j=s[k])。以下是本程序的解决方案:
1、颜色:用数组S[k]存储。值1-4,表示红、蓝、白、黄四种颜色;0,表示未填色。
2、地图:用二维数组A存储。a[i,j]=0则表示省I和省J不相邻,a[i,j]=1则表示相邻。
3、函数pd(i,j)判断第I个省填上第J种颜色填色的可行性,可行返回true,否则返回false。
4、过程try(i)给第I个省填色。
5、过程print,打印填色结果。
请你完成下列程序:
program test6;
const num=20;
var a:array [1..num,1..num] of 0..1;
s:array [1..num] of 0..4;
i,j,n:integer;
function pd(i,j:integer):boolean;
var k:integer;
begin
for k:=1 to i-1 do
if (a[i,k]=1) and ( ① ) then
begin pd:=false; exit; end;
pd:= ② ;
end;
procedure print;{打印结果}
var k:integer;
begin
for k:=1 to n do{将数字转为RBWY串}
case ③ of
1:write('R':4);
2:write('B':4);
3:write('W':4);
4:write('Y':4);
end;
writeln;
end;
procedure try(i:integer);
var j:integer;
begin
for j:=1 to 4 do
if ④ then begin
s[i]:=j;
if i=n then print
else try(i+1);
⑤ ;
end;
end;
Begin
write('please input city number: '); readln(n);
writeln('please input the relation of the cities:');
for i:=1 to n do
begin
for j:=1 to n do read(a[i,j]);
readln;
end;
for i:=1 to n do s[i]:= ⑥ ;
try(1);
End.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅰ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15
选择
二.问题求解:(5+5=10分)
1.国王共有儿子: 个;财产共分成了: 份。
2.小红开始时站的位置是: 。
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.程序的运行结果是:
2.程序的运行结果是:
3.程序的运行结果是:
4.程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.(+2+3+2+2=12分) 2.(3+3+3+3+3+3=18分)
①_____________ ①_____________
②_____________ ②_____________
③_____________ ③_____________
④_____________ ④_____________
⑤_____________ ⑤_____________
⑥_____________
少儿信息学奥林匹克竞赛试题【模拟Ⅰ】答案
一、选择题
题 号 1 2 3 4 5 6 7 8 9 10
答 案 D C D A C D D A A C
题 号 11 12 13 14 15
答 案 C B C C B
二、问题求解
1、答案:9个儿子,每人9份,共81份
2、答案:第10个位子
三、阅读程序
1、程序运行结果:3070
2、程序运行结果:7
3、程序运行结果:YES
4、程序运行结果:1 9 5 13 3 11 7 15 2 10 6 14 4 12 8 16
四、完善程序
1、① B[X]+1
② K:=0
③ B[I]<>0 或B[I] >0
④ I
⑤ K MOD 8=0
2、① j=s[k]
② true
③ s[k]
④ pd(i,j)
⑤ s[i]:=0
⑥ 0少儿信息学奥林匹克竞赛试题【模拟Ⅴ】
(考试时间90分钟 满分120分)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共40分)
1)一个完整的计算机系统应包括(D)。
A)主机,键盘和显示器 B)计算机及其外部设备 C)系统硬件和系统软件 D)硬件系统和软件系统
2)十进制数2005转换为二进制,结果是(A)。
A)11111010101 B)11000101101 C)11111001011 D)10111010101
3)下列电子邮件地址,正确的是(A)。
A)john@ B)cai@jcc.pc.tool@rf.edu.jp C)162.105.111.22 D)www.
4)彩色显示器所显示的五彩斑斓的色彩,是由红色,蓝色和(D)色混合而成的。
A)紫色 B)白色 C)黑色 D)绿色 E)橙色
5)目前世界上计算机的工作原理是______,它来源于_____提出的_______原理。(A)
A)存储程序和程序控制、冯.诺依曼、程序设计
B)存储程序控制、冯.诺依曼、存储程序和程序控制
C)存储程序、Taring、程序控制
D)存储程序控制、Turing、程序设计
6)关于计算机病毒,下列说法正确的是(B)。
A)病毒是由软盘表面粘有灰尘造成的
B)病毒常隐藏在数据文件或系统中,具有隐蔽性和潜伏性
C)大部分病毒不具有传染性和破坏性
D)病毒会对计算机造成轻或重的损害,但制造病毒的人并不构成犯罪
7)计算机网络的目标是实现(C)。
A)数据处理 B)文献检索 C)资源共享和信息传输 D)信息传输
8)目前比较流行的网络编程语言是(C)。
A)Java B)FoxPrl C)Pascal D)C
9)根据域名代码规定,域名为www.tinghua.表示的网站类别应是(A)。
A)教育机构 B)军事部门 C)商业组织 D)非营利组织
10)计算机的硬件系统包括(C)。
A)运算器、控制器、存储器、输入设备、输出设备 B)控制器、运算器、输入和输出设备
C)中央处理器、输入和输出设备 D)主机和键盘、显示器
11)算法是指(B)。
A)为解决问题而编制的计算机程序 B)为解决问题而采取的方法与步骤
C)为解决问题需要而采用的计算机编程语言 D)为解决问题而采用的计算方法
12)Internet上访问Web信息时用的工具是浏览器。目前常用的Web浏览器之一是(C)。
A)Internet Explorer B)Outlook Express C)Google D)Flash
13)小明打算给远在北京工作的叔叔发送电子邮件,下面的说法中,正确的是(D)。
A)小明叔叔的电脑必须开机,否则接收不到小明的电子邮件
B)小明可以将自己最近的一张照片以附件的形式发送给叔叔
C)只有小明的电脑与互联网保持连接状态,才能书写邮件内容
D)小明不能把祝福的邮件同时发送给他远在天津读书的小阿姨
14)某种计算机的内存容量是640K,这里的640K容量是指(C)。
A)640 B)640*1000 C)640*1024 D)640*1024*1024
15)以下有关操作系统的叙述中,哪一个是错误的(D)。
A)操作系统管理着系统中的各种资源 B)操作系统应为用户提供良好的界面
C)操作系统是资源的管理者和仲裁者 D)操作系统是计算机系统中的一个应用软件
16)下列四项中,合法的IP地址是(B)。
A)190.220.5 B)206.53.3.78 C)206.53.312.78 D)123,43,82,220
17)目前世界上最大的计算机互联网络是(C)。
A)ARPA网 B)IBM网 C)INTERNET D)INK.ET
18)下列计算机语言中,CPU能直接识别的是(D)。
A)自然语言 B)高级语言 C)汇编语言 D)机器语言
19)设A1=ture,A2=False,A3=True表达式A1 OR A2 AND A3的值为(D)。
A)FALSE B)TRUE C)0 D)1
20)有下列程序:
for i:=7 to 90 do
begin
writeln(i);
i:=i+4;
end
共执行循环次数是(C)。
A)14 B)15 C)16 D)17
二.问题求解:(6+6+8=20分)
1.数学推理。某班有50名学生,每位学生发一张调查表,上面写a,b,c三本书的书名,将读过的书打√,结果统计数字如下:只读a者8人;只读b者4人;只读c者3人;全部读过的有2人;读过a,b两本书的有4人;读过a,c两本书的有2人;读过b,c两本书的有3人。
问:读过a的人数是 ; 一本书也没读过的人数是 。
2.逻辑推理。有红、黄、黑、白四色球各一个,放置在一个内存编号为1、2、3、4四个格子的盒中,每个格子放置一只球,它们的顺序不知。甲、乙、丙三人猜测放置顺序如下:
甲:黑编号1,黄编号2; 乙:黑编号2,白编号3; 丙:红编号2,白编号4。
结果证明甲乙丙三人各猜中了一半,写出四色球在盒子中放置情况及推理过程。
3.公式推导与计算。公安部门破译了某一段密电码与其译文,现列如下(□:表示一个空格):
密电码: NH□WLH□6.0□□LN
译 文: MS□DOS□6.0□□OM
现已知此密电码及译文所使用的均为26个英文大写字母(其他字符不变)。请根据此对应规律,写出某一个密电码字母(X)与其译文字母(K)之间的ASCII码的关系表达式: 。
并根据以上规律,将以下译文,还原成密电码:
译 文:WINDOWS□98
密电码:
三.阅读程序并写出运行结果(6+6+6+12=30分):
1.
var a,b,c,d,e:integer;
begin
a:=79 ; b:=34; c:=57; d:=0; e:=-1;
if (a
c) then d:=d+e
else if (d+10else d:=e-a;
writeln(d);
end.
程序运行结果:
2.
var i,j:integer;
str1,str2:string;
begin
str1:='pig-is-stupid'; str2:='clever';
str1[1]:='d'; str1[2]:='o'; i:=8;
for j:=1 to 6 do
begin
str1[i]:=str2[j]; inc(i);
end;
writeln(str1);
end.
程序运行结果:
3.
var m,n:integer;
begin
m:=18; n:=81;
while m<>n do
begin
while m>n do m:=m-n;
while n>m do n:=n-m;
end;
writeln(m);
end.
程序运行结果:
4.下列程序用来求 ,直到累加到第10项为止,试把空格补上。
program sum(input,output);
var s,a :real; n :integer;
begin
s:=1.0; n:=0;
repeat
;
a:=1/( );
s:=s+a;
until n=9;
writeln('n=',n,' s=',s:3:1);
end.
程序运行结果:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1. 函数FN使用递归方法求1+2+3+……+N。
其返回值为:当N<1,则返回0;
当N>=1,则返回1+2+3+…+N的值。
请填空完成它:
function fn(n:integer):integer;
begin
if n<1 then fn:=0
else if n=1 then fn:=____ ① ;
else fn:=fn( __ ② )+n;
end;
2. 孪生素数是指两个相差为2的素数,例如:3和5,5和7,11和13等。
下面的程序可输15对孪生素数,其中函数F用于判断整数A是否为素数。
program p(input,output);
var k,n :integer;
function f(a:integer):boolean;
var k:integer;
flag:boolean;
begin
flag:=__ __① _____;
k:=2;
while(k<=a div 2) and__ __② ____do
if a mod k=0 then ______③______
else k:=k+1;
f:=flag;
end;
begin
n:=0;k:=2;
repeat
if f(k)and __ ___④_ ___ then
begin
n:=n+1;
writeln(k,k+2)
end;
k:=k+1;
until n=15;
end.
3. 输入2个整数k,n,将k分成n个全不相同的整数,并使此n个整数的乘积为最大。
【程序说明】假设n≤20,因为n个数全不相同,所以最小的n个数为:1,2,3,…,n,它们的和=1+2+3+…+n=n*(n+1)/2,所以k≥n*(n+1)/2。
本程序的处理思想类似以前的放置小球程序。
(1) 读入k,n的值
(2) 求出第一个数的最大值s0。因为n个数全不相同,所以第二个数至少要比第一个数大1,第二个数至少要比第一个数大2,第三个数至少要比第一个数大3,……第n个数至少要比第一个数大n-1,即后面n-1个数在第一个数s0的基础上,增量分别为1,2,3,4,…,n-1,总增量=1+2+3+…(n-1)=n*(n-1)/2,所以第一个数最大值为(k-n*(n-1)div 2)div n 。
(3) 求出满足②后k的余量:k-n*s0-n*(n-1)div 2的值,将余量依次加给a[n],a[n-1],…,每个增加1,直到余量分完为止,这样保证乘积为最大。
(4) 输出这n个数:第i个数=基数s0+增量(i-1)+分加的余量值a[i]。
例如:k=48, n=6,即将48分成6个不同的数,且乘积最大:
步 骤 a1 a2 a3 a4 a5 a6
第一步:计算基数s0=(48-6*5div2)div 6=5 未知 未知 未知 未知 未知 未知
第二步:计算余量n1=48-6*5-6*5div2=3,并置每个数的可能分加余量初值为0 0 0 0 0 0 0
第三步:将余量3依次分给a6,a5,a4 0 0 0 1 1 1
第四步:把分加的余量a[i]+基数s0+增量(i-1)输出,所以输出的6个数分别为:(0+5+0),(0+5+1),(0+5+2),(1+5+3),(1+5+4),(1+5+5),即:5,6,7,9,10,11
Program test;
var n,n1,n,s0,k,i:integer;
a:array[1..20]of integer;
begin
readln(k,n);
s0:= ① div n;
n1:=k-n*s0-n*(n-1)div 2;
for i:=1 to n do a[i]:=0; {在余量分发前置初值}
i:=n;
while n1>0 do
begin
a[i]:=1;
② ;
③ ;
end;
for i:= ④ do write(a[i]+s0+i-1 :4);
readln;
end.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅴ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2 3
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2 3
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共40分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15 16 17 18 19 20
选择
二.问题求解:(6+6+8=20分)
1.读过a的人数是 ; 一本书也没读过的人数是 。。
2.① 红编号是 ;黄编号是 ;黑编号是 ;白编号是 。
② 推理:
3.①密电码字母X与其译文字母K之间的ASCII码的关系表达式 。
②译 文: WINDOWS□98
密电码:
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(6+6+6+12=30分):
1.程序的运行结果是:
2.程序的运行结果是:
3.程序的运行结果是:
4.① ② 程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.(3+3=6分) 2.(3+3+3+3=12分)
①________ _____ ①________ _____
②________ _____ ②________ _____
③________ _____
④________ _____
3.(3+3+3+3=12分)
①________ _____
②________ _____
③________ _____
④________ _____
少儿信息学奥林匹克竞赛试题【模拟Ⅴ】答案
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共40分)
题 号 1 2 3 4 5 6 7 8 9 10
答 案 D A A D B B C A A A
题 号 11 12 13 14 15 16 17 18 19 20
答 案 B A B C D B C D B D
二.问题求解:(6+6+8=20分)
1.读过a的人数是 8+2+=12 ; 一本书也没读过的人数是 50-20=30 。
2.① 红编号是 2 ;黄编号是 4 ;黑编号是 1 ;白编号是 3 。
② 推理:根据题意:如果甲的后半部分对,即黄编号为2,那么乙必定是白编号为3正确,丙只能选择红编号为2,这样红与黄编号冲突,推理出错;所以甲猜中的必定是前半部分,即黑编号1,乙则猜中白编号3,丙猜中为红编号2,那么黄则是编号4,推理正确。
3.①密电码字母X与其译文字母K之间的ASCII码的关系表达式 ord(x)=155-ord(k) 。
②译 文: WINDOWS□98
密电码: DRMWLDH□98
三.阅读程序并写出运行结果(6+6+6+12=30分):
1.程序的运行结果是:-80
2.程序的运行结果是:dog-is-clever
3.程序的运行结果是:9
4.① n:=n+1 ② n*(n+1) 程序的运行结果是:n=9 s=1.9
四、完善程序
1、① 1或n ② n-1
2、① true ② flag或flag=true ③ flag:=false ④ f(k+2)或f(k+2)=true
3、① (k-n*(n-1)div 2)div n ② i:=i-1 ③ n1:=n1-1 ④ 1 to n少儿信息学奥林匹克竞赛试题【模拟Ⅲ】
(小学组PASCAL语言 二小时完成)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
1)下面有关计算机的特点叙述,不正确的是( )。
A)运算速度快 B)有记忆和逻辑判断能力 C)具有自动执行程序的能力
D)至今没有任何人能给出求解方法的难题,计算机行也能求出解来
2)微机内的存储器的地址是按( )编制的。
A)二进制位 B)字长 C)字节 D)微处理器的型号
3)在微机中,通用寄存器的位数是( )。
A)8位 B)16位 C)计算机字长 D)32位
4)键盘上的数字、字母、标点符号、空格键应称为( )。
A)字符键 B)空格键 C)功能键 D)运算键
5)十进制算术表达式:3*512+7*64+4*8+5的运算结果,用二进制表示为( )。
A)10111100101 B)11111100101 C)11110100101 D)11111101101
6)计算机病毒的特点是( )。
A)传播性、潜伏性、易读性与隐蔽性 B)破坏性、传播性、潜伏性与安全性
C)传播性、潜伏性、破坏性与隐蔽性 D)传播性、潜伏性、破坏性与易读性
7)为了让计算机完成一个完整的任务而编制的一串指令序列称之为( )。
A)命令 B)口令 C)程序 D)软件
8)Window95中没有下列( )功能。
A)备份 B)电话拨号程序 C)系统监视器 D)系统信息
9)Windows中,菜单项后带有符号“…”,表示该菜单项( )。
A)可以进行开关选择 B)带有子菜单 C)只能选一个 D)执行时有对话框
10)Windows中,可以使用快捷键( )来关闭当前窗口或退出程序。
A)Ctrl+X B)Ctrl+ESC C)Alt+F4 D)Alt+Tab
11)五笔字型编码属于( )。
A)国标码 B)机内码 C)输入码 D)字型码
12)香港在世界上注册的顶级域名是( )。
A)hk B)tw C)cn D)com
13)在turbo pascal中编译程序时显示“Error 3:Unknown idintifient”错误,原因是( )
A)begin和end不配对 B)语句末尾缺少“;”
C)使用未经定义的变量 D)编译前未保存文件
14)满二叉数的结点个数为11,则它的叶结点个数为( )
A)4 B)5 C)6 D)12
15)设栈的初始为空,元素a,b,c,d,e,f,g依次入栈,以下出栈序列不可能出现的是( )
A)a,b,c,d,e,f,g B)f,c,a,b,e,g,d
C)d,c,f,e,b,a,g D)a,e,d,c,b,f,g
二.问题求解:(6+4=10分)
1.已知N个自然数(1,2,…,N)的各位数字的总个数是1980,求N。(例如:有自然数1,2,3,…,9,10,即数字总个数为11个时,N=10)
2.有一根长度是a的不均匀棒子(见下图)。
现要找一个支点A,使得该支点正好可使棒子处于平衡状态。
请完善下面的算法:
第一步:C0=0,C1=a
第二步:A=(C0+C1)/2
第三步:取上一步支点A,此时有三种情况:
(1)以A为支点,棒平衡,算法结束。
(2)右边重,则需令 等于 ,回第二步重复。
(3)左边重,则需令 等于 ,回第二步重复。
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.
program test1;
var x,y,z :integer;
procedure gcd(var a,b:integer);
begin
while a<>b do
begin
if a>b then a:=a-b;
if aend;
end;
Begin
read(x,y,z); gcd(x,y);
y:=z; gcd(x,y);
writeln(x);
End.
输入:84 42 56
输出:
2.
program test2;
var i,j :integer;
Begin
for i:=1 to 19 do write(' '); {‘ ’表示一个空格}
writeln(' * ');
for i:=1 to 18 do write(' ');
writeln(' *** ');
for i:=1 to 4 do
begin
for j:=1 to 18-i do write(' ');
write(' ** ');
for j:=1 to 2*i-1 do write(' ');
writeln(' ** ');
end;
End.
输出:
3.
program test3;
var i,j:integer;
a:array[1..14] of integer;
procedure sw(i1,j1:integer);
var k1:integer;
begin
for k1:=1 to (j1-i1+1) div 2 do
begin
a[i1+k1-1]:=a[i1+k1-1]+a[j1-k1+1];
a[j1-k1+1]:=a[i1+k1-1]-a[j1-k1+1];
a[i1+k1-1]:=a[i1+k1-1]-a[j1-k1+1];
end;
end;
Begin
j:=211;
for i:=1 to 14 do
begin
a[i]:=i;j:=j-i;
end;
sw(1,4); sw(5,10); sw(11,14); sw(1,14);
for i:=1 to 14 do
begin
if j mod i=1 then write(a[i]:3);
j:=j-a[i];
end;
writeln;
End.
输出:
4.
program test4;
var b,c :array[1..100]of integer;
p,q,i,j,j1,p1,j2:integer;
Begin
read(q,p);
j:=1; p1:=1; b[1]:=q; j1:=0;
while q <>0 and p1=1 do
begin
j1:=j1+1; c[ j1 ]:=trunc(q*10/p); q:=q*10-c[ j1 ]*p;
if q <> 0 then
begin
j2:=1;
while b[ j2 ]<>q and j2<=j do j2:=j2+1;
if b[ j2 ]=q then
begin
p1:=0; write('0.');
for i:=1 to j2-1 do write(c[i]);
write( '{ ' );
for i:=j2 to j1 do write(c[i]);
write( ' }');
end
else
begin j:=j+1; b[j]:=q; end
end
else
begin
write('0. ');
for i:=1 to j1 do write(c[ j1 ]);
end;
end;
End.
输入:2 7
输出:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.下面是一个求:1/1+1/2+2/3+3/5+5/8+8/13+……前20项之和的程序段,试将程序补充完整:
s:=0; a:=1; b:=1;
for k:=1 to 10 do
begin
s:= ① ;
a:= ② ;
s:= ③ ;
b:= ④ ;
end;
writeln(s);
2.求出两个自然数的最小公倍数。
【算法描述】首先读入二个自然数X,Y,然后用辗转相减法求出其最大公约数存于GCD中,最后按下列公式求得最小公倍数GCM:GCM=(X*Y)/GCD。
辗转相减法求最大公约数的思想是:将两数不断相减,每次都用大数减去小数,并将减的差替代大数,继续相减,直到差为0,差为0的这次减法的减数或被减数就是最大公约数。
例如:辗转相减法求36与28的最大公约数的过程为:
X Y 差
第一次:36 28 8→X
第二次:28 8 20→X
第三次:20 8 12→X
第四次:12 8 4→X
第五次:4 8 4→Y
第六次:4 4 直到X=Y,4就是最大公约数
【程序】
read(x,y);
x0:=x; y0:=y;
while ① do
if x0>y0 then x0:= ②
else y0: ③ ;
④ ;
GCM:=(X*Y)/GCD;
Writeln(GCM);
3.装球:设有N个盒子(N足够大,可装入任何数量的球),分别编号1,2,…。同时有K个小球(K>0),今将K个小球装入到盒子中去,装入规则如下:
(1)第一个盒子不能为空。
(2)装入必须严格按递增的顺序进行。例如,当K=8,N=6时装入方法有:1,2,5或1,3,4。
(3)在满足上面的两个条件下,要求有球的盒子尽可能多。
(4)装完之后,相邻盒子中球个数差的绝对值之和为最小(未装的盒子不计)。如上例中:
装入法1,2,5则差的绝对值之和为:(2-1)+(5-2)=4
装入法1,3,4则差的绝对值之和为:(3-1)+(4-3)=3
【程序要求】给出K(K表示小球个数)之后,求出满足上述四个条件的装入方法。
【算法描述】这四条规则层层推进,相互牵制。读懂之后,应产生这样的装入步骤:
第一步:先将K个小球,在第一个盒子放1个,在第二个盒子放2个,在第三个盒子放3个,…在第L个盒子放L个(L不一定等于N),此时剩下的小球少于L+1,那么,已不能再开一个新盒子了,因为第L+1个盒子至少要放L+1个球,才能满足装入规则2(递增的要求)。所用的盒子编号是1,2,3,…,L。
第二步:将第一步剩余的小球,依次给第L个盒子、第L-1个盒子、第L-2个盒子……分别再加入一个小球,直到小球取完。不把剩余的小球加给某一个盒子,是因为考虑到装入规则4,保证相邻盒子的球数差为最小。
具体演示:如13个小球(K=13),8个盒子(N=8)
第一步:看图1:
放球的方向是→,当剩余的小球为3个时,停止放球,此时L=4,即有球的最后一个盒子是4号盒。
第二步:看图2:
放球的方向是←,依次给4号、3号、2号盒子再各增加一个小球,直到小球全部用完。
·我们设计一个数组A,用数组元素代表盒子然后依次装入小球。
【程序】
program test5;
const n=20;
var a :array[1..n]of integer;
k, j,L:integer;
Begin
repeat
read(k);
① ;
j:=1;
while ② do
begin
a[ j ]:=j; ③ ; j:=j+1;
end;
L:=j-1;
while k >0 do
begin
④ ; k:=k-1; L:=L-1;
end;
for i:=1 to ⑤ do write(a[i]);
End.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅲ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15
选择
二.问题求解:(5+5=10分)
1.N= 。
2.右边重,则需令 等于 ,回第二步重复。
左边重,则需令 等于 ,回第二步重复。
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.程序的运行结果是:
2.程序的运行结果是:
3.程序的运行结果是:
4.程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.(2+2+2+2=8分) 2.(2+2+2+2=8分)
①_____________ ①_____________
②_____________ ②_____________
③_____________ ③_____________
④_____________ ④_____________
3.(2+3+3+3+3=14分)
①_____________
②_____________
③_____________
④_____________
⑤_____________
少儿信息学奥林匹克竞赛试题【模拟Ⅲ】答案
一、选择题
题 号 1 2 3 4 5 6 7 8 9 10
答 案 D C C A B C C D D C
题 号 11 12 13 14 15
答 案 C A C C B
二、问题求解
1.N= 696 。(9+2*(99-9)+3*(N-99)=1980)
2.右边重,则需令 C0 等于 A ,回第二步重复。
左边重,则需令 C1 等于 A ,回第二步重复。
三、阅读程序
1、程序运行结果:14
2、程序运行结果:
3、程序运行结果:12 5 10
4、程序运行结果:0.{285714}
四、完善程序
1、① s+a/b
② a+b
③ s+b/a
④ b+a
2、① x0<>y0
② x0-y0
③ y0-x0
④ GCD:=x0
3、① until k >0
② k>=j
③ k:=k-j
④ a[L]:=a[L]+1
⑤ j-1少儿信息学奥林匹克竞赛试题【模拟Ⅳ】
(小学组PASCAL语言 二小时完成)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题1.5分,每题只有一个正确答案,多选或错选都无分。共30分)
1)计算机主机是由CPU与( )构成的。
A)控制器 B)输入、输出设备 C)运算器 D)内存储器
2)微机内的存储器的地址是以( )编址的。
A)二进制位 B)字长 C)字节 D)微处理器的型号
3)一台微机如果没有下面哪项配置就不能正常工作( )。
A)打印机 B)硬盘 C)内存储器 D)光盘驱动器
4)计算机要处理磁盘上的文件时,应先将文件内容读到( )中。
A)CPU B)寄存器 C)内存储器 D)控制器
5)下列无符号数中,最小的数是( )。
A)(11011001)2 B)(75)10 C)(37)8 D)(2A)16
6)WINDOWS是一种( )。
A)字处理系统 B)操作系统 C)数据库系统 D)图文处理系统
7)GB2312-80规定一级汉字3755个,二级汉字3008个,二级汉字是( )为序排序的。
A)以笔画多少 B)以部首 C)以ASCII码 D)以机内码
8)ASCII码是( )位二进制代码。
A)8 B)7 C)12 D)16
9)不同的计算机,其指令系统也不同,这主要取决于( )。
A)所用的操作系统 B)系统的总体结构 C)所用的CPU D)所用的程序设计语言
10)INTERNET的规范译名为( )。
A)英特尔网 B)因特网 C)万维网 D)以太网
11)小张用十六进制、八进制和十进制写了如下一个等式:52-19=33
式中三个数是各不相同进位制的数,试问52、19、33,分别为( )。
A)八进制,十进制,十六进制 B)十进制,十六进制,八进制
C)八进制,十六进制,十进制 D)十进制,八进制,十六进制
12)OFFICE2000 中的“剪贴板”是( )。
A)硬盘中的一块区域 B)内存中的一块区域 C)CACHE中的一块区域 D)CPU中的一块区域
13)调制解调器又称modem,可用于连接计算机和电话线拨号上网。调制是指( )。
A)把电信号转换成光信号 B)把光信号转换成电信号
C)把模拟信号转换成数据信号 D)把数据信号转换成模拟信号
14)在一个图中,所有顶点的度数之和等于所有边数的倍数为( )。
A)1/2 B)1 C)2 D)4
15)在程序语言中,一个过程通常由四个要素组成:过程名、一组称为( )的名字所形成的参数表、过程中的说明部分、过程体。
A)值参数 B)变量参数 C)实在参数 D)形式参数
16)产生100至300之间的随机整数(Random),且包含100、300两个整数的表达式是( )。
A)random(100)+200 B)random(200)+100 C)random(201)+100 D)random(300)
17)连接在internet的任何一台计算机,都有自己的( )。
A)网址 B)域名 C)IP地址 D)网页
18)下面IP地址正确的是( )。
A)202.300.12.4 B)192.168.0.3 C)100。128。35。91 D)111-102-35-21
19)计算机辅助教学的简写( )。
A)CAI B)CAM C)CAD D)CAT
20)将WINDOWS系统中的窗口和对话框进行比较,窗口可以移动和改变大小,而对话框( )。
A)既不能移动,也不能改变大小 B)可以移动,不能改变大小
C)可以改变大小,不能移动 D)既能移动,又能改变大小
二.问题求解:(9+4=13分)
1.已知:A1,A2,…,A81共81个数,其中只有一个数比其他数大,要用最少的比较运算次数,把这个值大的数找出来(假设两个数比较一次能决定出大于、小于或等于这三种情况)请将以下算法补充完整:
第一步:S1=A1+A2+…+A27
S2=A28+A29+…+A54
第一次比较(S1, S2):
S1>S2 取K=0
S1S1=S2 取K=54
第二步:S1=AK+1+AK+2+…+AK+9
S2=AK+10+AK+11+…+AK+18
第二次比较(S1, S2):
S1>S2 取K= ①
S1S1=S2 取K= ③
第三步:S1=AK+1+AK+2+AK+3
S2=AK+4+AK+5+AK+6
第二次比较(S1, S2):
S1>S2 取K= ④
S1S1=S2 取K= ⑥
第四步:S1=AK+1
S2=AK+2
第四次比较(S1, S2):
S1>S2 ⑦ 为最大数
S1S1=S2 ⑨ 为最大数。
2.下面是从十个数中挑选最大的数的算法流程图,请把空补充完整。
三.阅读程序并写出运行结果(5+5+6+7+7=30分):
1.
x1:=3; x2:=8;
for i:=1 to 5 do
begin
x:=(x1+x2)*2;
x1:=x2; x2:=x;
end;
writeln(‘x=’,x);
输出:
2.
a[1]:=1; a[2]:=1; k:=1;
repeat
a[k+2]:=1;
for i:=k downto 2 do
a[i]:=a[i]+a[i-1];
k:=k+1;
until k>=10;
for i:=1 to 11 do
write(a[i]);
输出:
3.
for i:=1 to 10 do read(a[i]);
max:=a[1]; s:=a[1];
for i:=2 to 10 do
begin
if s<0 then s:=0;
s:=s+a[i];
if s>max then max:=s;
end;
writeln(‘max=’,max);
输入:-2 13 -1 4 7 8 -1 -18 24 6
输出:max =
4.
readln(L,n);
s:=L; k:=1; t:=L;
while s< n do
begin k:=k+1; t:=t*L; s:=s+t; end;
s:=s-t; n:=n-s-1;
for i:=1 to 10 do b[i]:=0
j:=11;
while n>0 do
begin
j:=j-1; b[ j ]:=n mod L; n:=n div L;
end;
for i:=10-k+1 to 10 do
write( chr(ord(‘a’)+b[i]) );
输入:4 167
输出:
5.
const n=10;
function co(i1:integer):integer;
var j1,s1:integer;
begin
s1:=n;
for j1:=(n-1) downto (n-i1+1) do
s1:=s1*j1 div (n-j1+1);
co:=s1;
end;
begin
s:=n+1;
for i:=2 to n do s:=s+co(i);
write(‘s=’,s);
end.
输出:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共27分。)
1. 等差数列。设有一个数列a1,a2,a3,...,从第二项开始,每项等于它前面的项加上一个常数,此数列称为等差数列,其常数称为公差。例如 2,5,8,11,…其公差为3,即第二项等于第一项加3,第三项等于第二项加3,…
【问 题】求出160以内的6个成等差数列的素数。
【程序说明】函数f0的功能为:判断整数x0是否为素数
函数f1的功能为:判断从x1为首项,公差为d1的6个数是否全为素数
函数f2的功能为:从x2起,是否能找到6个成等差数列的素数
【程序】
program test1;
var i:integer;
function f0(x0:integer):boolean;
var p0 :boolean;
j0 :integer;
begin
p0:=true;
if ① then
for j0:=2 to x0-1 do
if ② then p0:=false;
f0:=p0;
end;
function f1(x1,d1):boolean;
var p1 : ③ ;
begin
p1:= ④ ;
if(x1+5*d1)<160 then p1:=f0(x1)and f0(x1+d1)and f0(x1+2*d1)and f0(x1+3*d1);
p1:=p1 and f0(x1+4*d1) and f0(x1+5*d1);
f1:=p1
end;
function f2(x2:integer):Boolean;
var p2 :boolean;
d2,i2 :integer;
begin
d2:=1; p2:=true;
while not f1(x2,d2) and (x2+5*d2<160) do d2:=d2+1;
if f1(x2,d2) then
begin
for i2:=0 to 5 do write(x2+i2*d2:4);
writeln;
end
else p2:=false;
f2:=p2;
end;
Begin
⑤ ;
while not f2(i) do i:=i+1;
readln;
End.
2. 最短路径。设有五个城市A,B,C,D,E排成一排,相邻城市之间有若干条通路,每一条通路上有一个运行时间,如下图:
该图中:
A,B之间有4条通路(K=4),通行时间分别为4,6,5,7;
B,C之间有2条通路(K=2),通行时间分别为6,2,......
试找出从A到E的最小通行时间。
【数据结构】
①用n表示城市个数-1。
②用数组A[1..n,0..k]表示城市之间的通路条数和通行时间,如上图:N=4
A(1,0)=4,A(1,1)=4,A(1,2)=6,A(1,3)=5,A(1,4)=7,
A(2,0)=2,A(2,1)=6,A(2,2)=2
A(3,0)=3,A(3,1)=6,A(3,2)=4,A(3,3)=3
A(4,0)=4,……
【程序】
program test2;
var s,i,j,n,t :integer;
a :array[1..20,0..10]of integer;
Begin
readln(n); {n表示:共有n+1个城市}
for i:=1 to n do
begin
readln(a[i,0]);
for j:=1 to ① do readln(a[i,j]);
end;
s:=0;
for i:=1 to n do
begin
t:= ② ;
for j:= ③ do
if a[i,j]s:= ④ ;
end;
writeln( s );
End.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅳ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题1.5分,每题只有一个正确答案,多选或错选都无分。共30分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15 16 17 18 19 20
选择
二.问题求解:(9+4=13分)
1. ① ② ③
④ ⑤ ⑥
⑦ ⑧ ⑨ 。
2. ① ② 。
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(5+5+6+7+7=30分):
1.程序的运行结果是:
2.程序的运行结果是:
3.程序的运行结果是:
4.程序的运行结果是:
5.程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共27分。)
1.(3+3+3+3+3=15分) 2.(3+3+3+3=12分)
①_____________ ①_____________
②_____________ ②_____________
③_____________ ③_____________
④_____________ ④_____________
⑤_____________
少儿信息学奥林匹克竞赛试题【模拟Ⅳ】答案
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题1.5分,每题只有一个正确答案,多选或错选都无分。共30分)
题 号 1 2 3 4 5 6 7 8 9 10
答 案 D B C C C B B B C B
题 号 11 12 13 14 15 16 17 18 19 20
答 案 B B D C D C C B A B
二.问题求解:(9+4=13分)
1. ① K ② K+9 ③ K+18
④ K ⑤ K+3 ⑥ K+6
⑦ AK+1 ⑧ AK+2 ⑨ AK+3 。
2. ① read(B) ② N:=N+1 。
三.阅读程序并写出运行结果(5+5+6+7+7=30分):
1、程序运行结果:x=1224
2、程序运行结果:1 9 36 84 126 126 84 36 9 1 1
3、程序运行结果:42
4、程序运行结果:bbac
5、程序运行结果:s=1024
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共27分。)
1、① x0>2
② x0 mod j0=0
③ boolean
④ false
⑤ i:=2
2、① a[i,0]
② a[i,1]
③ 2 to a[i,0]
④ s+t
A
B
C
D
E
2
3
5
7
6
6
6
4
4少儿信息学奥林匹克竞赛试题【模拟Ⅵ】
(小学组PASCAL语言 二小时完成)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
1)微型计算机的性能主要取决于( )。
A)内存 B)中央处理器 C)硬盘 D)显示器
2)下列不属于输入设备的是( )。
A)打印机 B)扫描仪 C)手写笔 D)鼠标
3)下列不属于软件的是( )。
A)WINDOWS B)显示卡驱动程序 C)病毒 D)MODEM
4)磁盘处于写保护状态,那么磁盘中的数据( )。
A)不能读出,不能删改,也不能写入新数据 B)可以读出,不能删改,也不能写入新数据
C)可以读出,可以删改,但不能写入新数据 D)可以读出,不能删改,但可以写入新数据
5)Windows系统启动后,按CTRL+ALT+DEL键,机器( )。
A)重启 B)中断当前运行程序,转入进程控制窗口 C)断电 D)保持原状态
6)能将高级语言源程序转换目标程序的是( )。
A)调试程序 B)解释程序 C)编译程序 D)编辑程序
7)PASCAL程序运行时,是在哪种存储器中进行( )。
A)硬盘 B)RAM C)ROM D)CACHE
8)192.168.0.1 是属于( )。
A)A类地址 B)B类地址 C)C类地址 D)D类地址
9)如果A的ASCII码为65,则Z的ASCII码为( )。
A)(91)10 B)(132)8 C)(1011101)2 D)(5B)16
10)两个十进制数13与14,将它们进行“与”运算,其值为( )。
A)27 B)12 C)15 D)11
11)当(A>=B)and(B>=C)的取值为真时,那么表达式(A>C)or(B=C)的值( )。
A)真 B)也有可能为假 C)无法判定结果的真假 D)只有当A.B.C都为正数时才为真
12)下面合法的电子邮件地址是( )。
A)http://ybw.online./ B)ftp://ybw.online./
C)http://cceclub./bbs/mailtybw@online. D)http.ybw.online.
13)鼠标形状 的作用是( )。
A)放大 B)拉伸 C)移动 D)缩小
14)完全二叉树按从上到下、左到右进行编号,根节点的编号为1,则i层j个节点的编号为( )。
A)2i+j B) 2i+j-1 C)2i-1+j D)2(i-1)+j-1
15)在画图里想画很直的横线或竖线,只要在画线的同时按住( )键不放就可以了。
A)Caps Lock B)Enter C)Shift D)Ctrl
二.问题求解:(5+5=10分)
1.把2002写成若干个连续自然数的和,有多种方法。请你写出其中的3种。
2.有10箱表壳(每箱装有10只)。已知其中的9箱是全钢的(每只重100克),另一箱是半钢的(每只重90克),钢和半钢的外形与颜色一样。要求只称重一次,可将这箱半钢的表壳从10个箱子中区分出来。请用自然语言描述这个算法。
三.阅读程序并写出运行结果(4+4+4+4+4+5+5=30分):
1.
for a:=1 to 3 do
x:=1;
for b:=1 to 4 do
for c:=1 to 5 do
x:=x+1;
writeln(x);
输出:
2.
read(a, n);
s:=0; t:=0;
for i:=1 to n DO
begin
t:=t*10+a; s:=s+t;
end;
write(‘s=’, s);
输入: 2 4
输出:
3.
s:=0;
read(n, f);
max:=f; min:=f; s:=f;
for i:=2 to n do
begin
read(f);
if f >max then max: =f;
if fs:=s+f;
end;
write(s-max-min);
输入: 5 1 2 3 4 5
输出:
4.
read(m,n); lcm:=0;
while lcm<= m*n do
begin lcm:=lcm+m; if lcm mod n =0 then break; end;
writeln(lcm);
输入: 15 27
输出:
5.
x:=2; y:=3;
for i:=y-x to x+y do
begin
x:=x+y;
y:=y*2;
end;
write(x,y);
输出:
6.
const m=4; n=3;
var a:array[1..m] of integer; b:array[1..n] of integer; c:array[1..m+n ] of integer;
begin
for i:=1 to m do read(a[i]); for i:=1 to n do read(b[i]);
i:=1; j:=1; k:=1;
repeat
if a[i]<=b[j] then
begin c[k]:=a[i]; i:=i+1; k:=k+1; end
else begin c[k]:=b[j]; j:=j+1; k:=k+1; end;
until i>m or j>n;
if i>m then
for x:=j to n do begin c[k]:=b[x]; k:=k+1; end
else for x:=i to m do
begin c[k]:=a[x]; k:=k+1; end;
for i:=1 to m+n do write(c[i]);
end.
输入: 5 12 18 72 1 9 26
输出:
7.
function prime( x:integer ):boolean;
var f :boolean; j :integer;
begin
f:=true; j:=2;
while j<=sqrt(x) do
if x mod j=0 then begin f:=false;
prime:=f;
end;
begin
read(n);
for i:=2 to (n div 2) do
if prime(i) and prime( n-i )then writeln(n,’=’, i,’+’, n-i );
end.
输入: 98
输出:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.多位数相加。将两个多位数相加,精确地输出它们的和。两个加数的位数由键盘输入,并且数值是一位一位输入的。
【算法分析】
①取两个数组A、B,A数组中的每一个元素存放第一个加数的各个数位,例如:A[1]存放个位数字,A[2]存放十位数字……,同样,B数组的每一个元素存放第二个加数的各个数位。
②设C数组存放和。将A[1]与B[1]相加,和暂存于S中,算出其进位G与本位和C[1]。然后将A[2]与B[2]相加,再加上低位的进位,得到向上一位的进位G与本位和C[2]……
③ 重复②,直到两数相加完成。
【程序】
var a,b,c :array[1..100 ] of integer; m, n, x, G :integer;
begin
read( m,n ); {m, n为两个加数的位数}
if m>n then x:=m else x:=n;
for i:=m downto 1 do read(a[i]); {逐位输入两个加数的值}
for i:=n downto 1 do read(b[i]);
① ;
for i:=1 to x do {逐位计算和的各位值}
begin s:=a[i]+b[i]+G; c[i]:= ② ; G:= ③ ; end;
if ④ then {高位是否有进位}
begin c[x+1]:=G; x:=x+1; end;
for i:= ⑤ do write(c[i]); {逐位输出和的各位数字}
end.
2. 求n行n列方阵的最大、最小值以及它们所处的位置。方阵由键盘输入后存储在数组a[1..n, 1..n]中。如:n=5时的方阵如下:
4 6 56 74 33
12 7 45 9 8
24 31 67 3 9
6 87 34 67 10
90 55 77 39 20
则该方阵的最大值=a[5,1]=90; 最小值=a[1,1]=4。
var a :array[1..5,1..5 ] of integer; max,maxi,maxj,min,mini,minj :integer;
begin
for i:=1 to 5 do
for j:=1 to 5 do read(a[i,j]);
max:=a[1,1]; ① ; ② ;
③ ; mini:=1; minj:=1;
for i:=1 to 5 do
for j:=1 to 5 do begin
if ④ then begin max:=a[i,j]; maxi:=i; maxj:=j; end;
if a[i,j]end;;
writeln(‘max=a[’, maxi, ’,’ , maxj, ’]=’, max);
writeln(‘min=a[’, mini, ’,’ , minj, ’]=’, min);
end.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅵ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15
选择
二.问题求解:(5+5=10分)
1. 。
2.算法如下:
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.程序的运行结果是:
2.程序的运行结果是:
3.程序的运行结果是:
4.程序的运行结果是:
5.程序的运行结果是:
6.程序的运行结果是:
7.程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.(3+3+3+3+3=15分) 2.(3+3+3+3+3=15分)
①_____________ ①_____________
②_____________ ②_____________
③_____________ ③_____________
④_____________ ④_____________
⑤_____________ ⑤_____________
少儿信息学奥林匹克竞赛试题【模拟Ⅵ】答案
一、选择题
题 号 1 2 3 4 5 6 7 8 9 10
答 案 B A D B B C B C B B
题 号 11 12 13 14 15
答 案 A C C D C
二、问题求解
1、因为2002可表示为7*286,则2002可写成286及286前3个自然数和后3个自然数的和,即283、284、285、286、287、288、289这7个连续自然数的和;
2002还可表示为14*143,则2002可写成包括71的前14个自然数和包括72的后14个自然数的和,总共28个数。即2002=58+……+71+72+……+85;
因为2002=7*11*13*2,所以2002还可表示为11*182,则2002=177+……+182+……+187;
2002还可表示为13*154,则2002=148+……+154+……+160;
2002还可表示为22*91,则2002=24+……+45+46+……+67;
2002还可表示为26*77,……
2002还可表示为2*1001,……
依次类推。
2、解决这个问题的算法,用自然语言可描述为:
① 先将箱子从1至10编号;
② 然后从1号箱子取1个表壳、2号箱子取2个表壳、3号箱子取3个表壳……依次类推,共取出了1+2了3+……+10=55只表壳;
③ 若全部为全钢的则总重量为55*100=5500克;
④ 若比5500少10克,则说明1号箱子为半钢;
少20克,则说明2号箱子为半钢;
少30克,则说明3号箱子为半钢;
依次类推。
三、阅读程序
1、程序运行结果:21
2、程序运行结果:2468
3、程序运行结果:9
4、程序运行结果:135
5、程序运行结果:95 96
6、程序运行结果:1 5 9 12 18 26 72
7、程序运行结果:
四、完善程序
1、①G:=0 ②s mod 10 ③s div 10 ④G<>0 ⑤x downto 1
2、①maxi:=1 ②maxj:=1 ③min:=a[i,j] ④a[i,j]>max ⑤min:=a[i,j]少儿信息学奥林匹克竞赛试题【模拟Ⅶ】
(小学组PASCAL语言 二小时完成)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题1.5分,每题只有一个正确答案,多选或错选都无分。共30分)
1)微机内的存储器的地址是按( )编址的。
A)二进制位 B)字长 C)字节 D)微处理器的型号
2)设深度为K的二叉树上只有度为0和2的节点,则这类树上所有的结点总数为( )。
A)K+1 B)2K C)2K-1 D)2K+1
3)下列不属于线性数据结构的是( )。
A)线性表 B)队列 C)栈 D)树
4)下列诸因素中,对微机工作影响最小的是( )。
A)尘土 B)噪声 C)温度 D)湿度
5)CPU包括的两部分是( )。
A)输入输出设备 B)存储器与运算器 C)运算器与控制器 D)存储器与控制器
6)多媒体计算机是指( )计算机。
A)专供家庭使用的 B)装有CD-ROM的
C)连接在网络上的高级 D)具有处理文字、图象、声音、影象等信息的
7)五笔字型编码属于( )。
A)国际码 B)机内码 C)输入码 D)字形码
8)在微机内,通用寄存器的位数是( )。
A)8位 B)16位 C)计算机字长 D)32位
9)计算机要处理磁盘上的文件时,应先将文件内容读到( )中。
A)CPU B)寄存器 C)内存储器 D)控制器
10)计算机的软件系统通常分为( )。
A)系统软件与应用软件 B)高级软件与一般软件 C)军用软件与民用软件 D)管理软件与控制软件
11)在计算机内部,用来传送、存储、加工处理的数据或指令(命令)都是以( )形式进行的。
A)十进制码 B)智能拼音码 C)二进制码 D)五笔字型码
12)顺序表(2,5,7,10,14,15,18,23,35,41,52)用二分法查找12,所需关键码比较次数为( )。
A)2 B)3 C)4 D)5
13)计算机病毒传染的必要条件是( )。
A)在内存中运行病毒程序 B)对磁盘进行读写操作
C)在内存中运行含有病毒的可执行程序 D)复制文件
14)为了让计算机完成一个完整的任务而编制的一串指令序列称之为( )。
A)命令 B)口令 C)程序 D)软件
15)在计算机硬件中,通常讲的RAM是指( )。
A)只读存储器 B)随机存储器 C)寄存器 D)控制器
16)启动WORD的不正确方法是( )。
A)单击Office工具栏的WORD图标 B)单击“开始”→“程序”→WORD
C)单击“开始” →“运行”,并输入WORD按回车 D)双击桌面上的“WORD快捷图标”
17)已知数组a中,每个元素a[i,j]在存储时要占3个字节,设i从1变化到10,分配内存时从地址sa开始连续按行存储分配的。试问:a[5,8]的起始地址为( )。
A)sa+141 B)sa+180 C)sa+222 D)sa+225
18)设栈的输入序列为(1,2,3,4),则( )不可能是其出栈序列。
A)1234 B)2134 C)1432 D)4312
19)不同的计算机,其指令系统也不同,这主要取决于( )。
A)所用的操作系统 B)系统的总体结构 C)所用的CPU D)所用的程序设计语言
20)某台计算机的内存容量为640K,这里的640K容量是指( )字节。
A)640个 B)640*1000个 C)640*1024个 D)640*1024*1024个
二.问题求解:(6+6=12分)
1.有一堆游戏棒,第一个参加游戏的取走了一半多一根,第二个游戏者再将剩下的取走一半多一根,以此类推,以后的游戏者均取走前一次剩下的一半多一根,到第10个人来取时,发现只剩下一根了。问:游戏开始前这堆游戏棒共有多少根?并用你所掌握的编程语言(最简洁的程序段)来描述是如何求解的。(3+3=6分)
2.任给自然数N,K(1≤K≤9),按如下计算步骤(算法)求序列XjXj-1…X0 。
步骤:
①j=0
②如果N>=K则转第3步,否则转第7步
③Xj=N mod K {DIV表示整除取整数;MOD表示整除取余数}
④N=N div K
⑤j=j+1
⑥回第二步
⑦Xj=N
⑧结束
试求:当N=1998,K=3时,XjXj-1…X0的值。
三.阅读程序并写出运行结果(6+8+8+8=30分):
1.
X1:=3;
X2:=8;
For I:=1 to 5 do
Begin
X:=(X1+X2)*2;
X1:=X2;
X2:=X;
End;
Write(‘X=’,X);
输出:
2.
a(1):=1;
a(2):=1; d:=1;
Repeat
a[K+2]:=1;
For I:=K+1 downto 2 do a[I]:=a[I]+a[I-1];
K:=K+1;
Until K>=10;
For I:=1 to 11 do write(a[I],’’);
输出:
3.
K:=0; read(N,X);
Repeat
X:=X/2;
K:=K+1;
Until K>=N;
Y:=X+1;
K:=0;
Repeat
Y:=Y*Y;K:=K+1;
Until k>=N;
Write(‘Y=’,Y:8:0)
输入: 2 16
输出:
4.
Var a :array[1..20]of integer;
i,j:integer;
Begin
For i:=1 to 20 do
Begin
a[i]:=0;
For j:=1 to i do
a[i]:=a[i]+2*j-1;
End;
For i:=1 to 20 do
Begin
Write(a[i]:5);
If i mod 5=0 then writeln;
End;
End.
输出:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共28分。)
1.多位数相加。(2+2+3+3+2=12分)
【问题描述】 输入一个正整数,然后与它倒过来的数相加。
例如:输入328,与它倒过来的数相加后的结果为:328+823=1151 。
【程序清单】
var i,j,x,x1,y:integer;
b:array[1..10] of 0..9;
begin
readln(x);
x1:=x; j:=11;
while ① do
begin
j:=j-1;
b[j]:= ② ;
x:=x div 10;
end;
y:=0;
for i:= ③ do
y:= ④ ;
x:= ⑤ ;
writeln(x);
readln;
end.
2. 求第r个大的数。(3+2+2+3+3+3=16分)
【问题描述】 读入n个不相同且不为0的数(1<=n<=100),不用排序,求出其中第r个大的数(1<=r<=n),即有r-1个数比它大,其余的数都比它小。例如输入:3,14,22,15,17,6,其中第3个大的数为15。
【算法说明】 以数组a[1..100]记录读入的n个数,并以0结束(0本身不是n个数中的数)。然后从第一数开始,将它与其余的数进行比较并记录出比它大的数的个数(存于变量y中),若y=r-1时,得到所求结果,否则对下一个数进行同样的处理。
【程序清单】
var r,i,j,x, y:integer;
a:array[1..100] of integer;
p:Boolean;
begin
j:=0;
readln(x);
while ① do
begin
② ;
a[j]:=x;
③ ;
end;
realn(r); p:=true; i:=1;
while p do
begin
④ ; y:=0;
for k:=1 to j do
if xif ⑥ then
begin
writeln(x);
p:=false;
end
else i:=i+1;
end;
end.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅶ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题1.5分,每题只有一个正确答案,多选或错选都无分。共30分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15 16 17 18 19 20
选择
二.问题求解:(6+6=12分)
1.游戏开始前共有游戏棒: 根。
求解程序主体如下:
2.当N=1998,K=3时,XjXj-1…X0的值为: 。
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(6+8+8+8=30分):
1.程序的运行结果是:
2.程序的运行结果是:
3.程序的运行结果是:
4.程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共28分。)
1.(2+2+3+3+2=12分) 2.(3+2+2+3+3+3=16分)
①_____________ ①_____________
②_____________ ②_____________
③_____________ ③_____________
④_____________ ④_____________
⑤_____________ ⑤_____________
⑥_____________
少儿信息学奥林匹克竞赛试题【模拟Ⅶ】答案
一、选择题
题 号 1 2 3 4 5 6 7 8 9 10
答 案 C C D B C D D A C A
题 号 11 12 13 14 15 16 17 18 19 20
答 案 C B C C B C A D C C
二、问题求解
1、1534
2、2202000
三、阅读程序
1、程序运行结果:X=1224
2、程序运行结果:1 10 45 120 210 252 210 120 45 10 1
3、程序运行结果:Y=625
4、程序运行结果: 11111
11111
11111
11111
四、完善程序
1、①X<>0 ②X MOD 10 ③10 DOWNTO J ④Y*10+B[I] ⑤X1+Y
2、①X>0 ②J:=J+1 ③READ(X) ④X:=A[I] ⑤Y:=Y+1 ⑥Y=r-1少儿信息学奥林匹克竞赛试题【模拟Ⅱ】
(小学组PASCAL语言 二小时完成)
●●全部试题答案都要求写在答卷纸上,写在试卷上一律无效●●
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
1)自1946年世界上第一台计算机ENIAC诞生至今,计算机性能和硬件技术获得了突飞猛进的发展,50余年来大致可分为四代,现在应该是( )时代。
A)电子管计算机 B)晶体管计算机 C)(超)大规模集成电路计算机 D)中小规模集成电路计算机
2)不同的计算机,其指令系统也不同,这主要取决于( )。
A)所用的操作系统 B)系统的总体结构 C)所用的CPU D)所用的程序设计语言
3)已知ASCII码表中的大写字母后有6个其他字符,接着便是小写字母。现已知:A字母的ASCII码为(41)16,则小写字母b的ASCII码是( )。
A)(71)o B)(42)h C)(98)d D)(111010)b
4)计算机病毒破坏的是( )。
A)软盘 B)硬盘 C)打印机 D)程序与数据
5)下面四个选项中与其他三个类型不同的那个是( )。
A)PASCAL B)BASIC C)DOS D)汇编与LOGO
6)DOS系统对磁盘信息进行管理和使用是以( )为单位的。
A)文件 B)盘片 C)字节 D)命令
7)可执行文件的扩展名为( )。
与.DOC 和.TXT ,.EXE和.BAT D).WPS和.BAT
8)操作键盘的过程中,按正确指法击键,左手中指应击的字母键为( )。
A)R, D, X B)E, D, C C)U, J, M D)O, K, M
9)在进行计算机操作时,若在显示器屏幕上出现如下信息: Abort, Retry, Ignore, Fail 此时,选择A表示 ;选择R表示 ;选择I表示 ;选择F表示 。( )
A)A表示结束操作; R表示重试; I表示忽略错误并强制往下执行; F表示放弃操作继续往下
B)A表示重试; R表示结束操作; I表示忽略错误并强制往下执行; F表示放弃操作继续往下
C)A表示重试; R表示放弃操作继续往下; I表示忽略错误并强制往下执行; F表示结束操作
D)A表示结束操作; R表示忽略错误并强制往下执行; I表示重试; F表示放弃操作继续往下
10)在24*24点阵的字库中,汉字“一”与“编”的字模占用字节分别是( )。
A)32,32 32,72 C)72,72 D)72,32
11)算法是指( )。
A)为解决问题而编制的计算机程序 B)为解决问题而采取的方法与步骤
C)为解决问题而需要采用的计算机语言 D)为解决问题而采用的计算方法
12)设数组A[10..100,20..100]以行优先的方式顺序存储,每个元素占4个字节,且已知A[10,20]的地址为1000,则A[50,90]的地址是( )。
A)4244 B)14240 C)13310 D)1000
13)某二叉树的先序遍历序列为ABC,后序遍历序列为CBA,则其中序遍历不可能是( )。
A)ABC B)BAC C)BCA D)CBA
14)假设d=(a1,a2,...,a5),表示无向图G的5个顶点的度数,下面给出的哪组d 值合理( )。
A){5,4,4,3,1} B){4,2,2,1,1} C){3,3,3,2,2} D){5,4,3,2,1} E){2,3,2,2,2}
15)以下说法中,符合Pascal规范的是( )。
A)执行程序段:s:= '12';k:=34;val(s,k,code); 后k='1234’
B)N.沃思之所以把他自己设计开发的语言命名为Pascal,是为了纪念波兰数学家帕斯卡
C)函数与过程的区别之一是:过程至少给过程名赋值一次,而函数可以不需要。
D)如果用邻接矩阵(即二维数组)A[i,j]来存储图,所以A[i,j]的值就是顶点i的度。
二.问题求解:(4+6=10分)
1.已知一个数列1,1,2,3,5,…,可用符号表示为a1=1,a2=1,a3=2,…,试找出an-2,an-1,an (n>=3)之间的关系。
2.我们将正方形沿着中心逆时针旋转90。的运动用符号a来表示(见图1-1):
如果将连续两次逆时针旋转90。的运动看作是a和a的乘法运算,记为:aa或a2,如图1—2所示:
问题1:请对图1—3画出an运动的结果,这里n取自然数,an表示连续进行n次旋转90。的运动。
如果将如图1—4的旋转运动看作a的逆元素,记为1/a;那么便有:1/a=a3
问题2:an 的逆元素1/an的值是什么(n取自然数)
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.
for i:=1 to 9 do
write(i); {这句话执行 ① 次}
for i:=1 to 9 do
begin
for j:=1 to i do
write(i*j); {这句话执行 ② 次}
for j:=1 to 2 do
writeln; {这句话执行 ③ 次}
end;
2.
program test1;
var a :array[1..3,1..3]of integer;
i,j :integer;
Begin
for i:=1 to 3 do
for j:=1 to 3 do
read(a[i,j]);
for i:=1 to 3 do
for j:=1 to 3 do
a[i,j]:=a[(a[i,j]+1)mod 3+1,( a[i,j]+2)mod 3+1];
for i:=1 to 3 do
begin
for j:=1 to 3 do
write(a[i,j]);
writeln;
end;
End.
输入:1 2 3 3 2 1 2 1 3
输出:
3.
program test2;
var k,n :integer;
x,y :real;
Begin
k:=0;
read(n,x);
repeat
x:=x/2; k:=k+1;
until k>=n;
y:=x+1; k:=0;
repeat
y:=y*y; k:=k+1;
until k>=n;
write(‘y=’,trunc(y+0.5));
End.
输入:2 16 输出:
4.
program test3;
var a :array[1..20]of integer;
i,j :integer;
Begin
for i:=1 to 20 do
begin
a[i]:=0;
for j:=1 to i do
a[i]:=a[i]+2*j-1;
end;
for i:=1 to 20 do
begin
write(a[i],’ ’);
if i mod 5=0 then writeln;
end;
End.
输出:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.求出1至n(10【算法描述】定义一个数组A,其中A[I]存放I,然后进行筛选:将凡是2,3,5,7除尽的数,全部变为0,最后统计出剩下的不为0的数,即为所求。
【程序】
program test4;
var n,i,s :integer;
a :array[1..1000]of integer;
Begin
read(n);
for i:=1 to n do
① ;
for i:=1 to n do
if ② then a[i]:=0;
③ ;
for i:=1 to n do
④ then s:=s+1;
writeln(‘s=’, ⑤ );
End.
2.设有2个字符串A,B,现将这2个字符串合并为1个字符串,合并的方法为:设A='a1a2……an',其中a1,a2,……,an为A中的字符,n为A的长度;B='b1b2……bn',其中b1,b2,……,bn为B中的字符,m为B的长度。
当n≥m时,合并之后成为:'a1b1a2b2……ambmam+1……an'
当n<m时,合并之后成为:'b1a1b2a2……bnanbn+1……bm'
【算法描述】定义一个足够长的字符数组C(长度不超过200),然后求出A,B字符串的长度,最后根据长度的大小进行合并。
【程序】
program test5;
var La,Lb,Lc,i :integer;
a :string[1..100]; b :string[1..100]; c :string[1..200];
Begin
Read(a,b);
La:=length(a); Lb:=length(b);
① ;
if Labegin
for i:= ② do
begin
③ ; c[Lc]:=b[i];
Lc:=Lc+1; c[Lc]:=a[i];
end;
for i:= ④ do
begin Lc:=Lc+1; c[Lc]:=b[i]; end;
end
else
begin
for i:=1 to Lb do
begin
Lc:=Lc+1; c[Lc]:=a[i];
Lc:=Lc+1; c[Lc]:=b[i];
end;
for i:= ⑤ do
begin Lc:=Lc+1; c[Lc]:=a[i]; end;
end;
writeln(c);
End.
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
少儿信息学奥林匹克竞赛试题【模拟Ⅱ】
小 学 组 答 卷 纸
阅 卷 记 录
第一大题得分 阅卷人
第二大题得分 阅卷人
1 2
第三大题得分 阅卷人
1 2 3 4
第四大题得分 阅卷人
1 2
总得分 总阅卷人
======================== 以下由考生填写 ========================
答 卷 部 分
一.选择一个正确答案(A/B/C/D)代码,填入每题的括号内(每题2分,每题只有一个正确答案,多选或错选都无分。共30分)
题号 1 2 3 4 5 6 7 8 9 10
选择
题号 11 12 13 14 15
选择
二.问题求解:(4+6=10分)
1.an-2,an-1,an (n>=3)之间的关系是 。
2.问题一:
问题二:
___________(市/县/城区) 学校_____________ 姓名___________ 考场号______
======================== 密 封 线 ========================
三.阅读程序并写出运行结果(6+7+8+9=30分):
1.语句①执行 次; 语句②执行 次; 语句③执行 次。
2.程序的运行结果是:
3.程序的运行结果是:
4.程序的运行结果是:
四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。本题共30分。)
1.(3+3+3+3+3=15分) 2.(3+3+3+3+3=15分)
①_____________ ①_____________
②_____________ ②_____________
③_____________ ③_____________
④_____________ ④_____________
⑤_____________ ⑤_____________
少儿信息学奥林匹克竞赛试题【模拟Ⅱ】答案
一、选择题
题 号 1 2 3 4 5 6 7 8 9 10
答 案 C C C D C A C B A C
题 号 11 12 13 14 15
答 案 B B B B B
二、问题求解
1、答案:an=an-1+an-2
2、答案:①
② n mod 4=0时, 1/an的值是:a4
n mod 4=1时, 1/an的值是:a3
n mod 4=2时, 1/an的值是:a2
n mod 4=3时, 1/an的值是:a1
三、阅读程序
1、程序运行结果:9
1+2+3+…+9=45
9*2=18
2、程序运行结果:2 2 1
1 2 2
2 2 2
3、程序运行结果:y=625
4、程序运行结果:1 4 9 16 25
36 49 64 81 100
121 144 169 196 225
256 289 324 361 400
四、完善程序
1、① a[i]:=i
② (a[i]mod 2=0)or(a[i]mod 3=0)or(a[i]mod 5=0)or(a[i]mod 7=0)
③ s:=0
④ if a[i]<>0
⑤ s
2、① Lc:=0
② 1 to La
③ Lc:=Lc+1
④ La+1 to Lb
⑤ Lb+1 to La