加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

第七届绍兴市少儿信息学竞赛

(2015-04-23 13:59:01)
标签:

育儿

分类: 少儿信息学奥赛初赛

第七届绍兴市少儿信息学竞赛

 

一、选择题:(2*15=30分)

1.为了表彰为计算机科学作出突出贡献的科学家,计算机界设立了一项素有“计算机界届的诺贝尔奖”美誉的著名奖项,该奖项名称是为了纪念一位英国计算机科学家而以他的名字命名的,这位科学家是(  

A 冯·诺依曼  B比尔·盖茨  C帕斯卡  D图灵

2.我们编程使用的PASCAL语言虽然由瑞士一痊教授设计并创立,但它的名字却是为了纪念一位法国的数学家,这位数学家的名字是(    )。

A冯·诺依曼B托马斯·库茨C帕斯卡D图灵

3.当我们在PASCAL编程系统中刚编写完成一个程序(期间没有进行过存盘操作,此时,我们从键盘输入的PASCAL程序被保存在计算机的(   )中。

A 硬盘B内存C光盘D显示器

4.下列常量或表达式中,数值最大的是(   )。

A25710   B10002+102   C1100112     D25010+112

5.某公司正在开发一套校园消费卡系统,公司计划在卡上穿孔来进行消费卡的身份识别。具体做法是在卡的某个区域确定若干个预留位置,在该预留位置上可以穿孔,可马以不穿孔(即使不穿孔,该位置也必须预留),以此来区分不同的卡。该校一共有2000名人员。则每张消费卡上预留位置数量最少应该为(   )。

A  11   B  10  C  2000    D14

6.国庆长假期间,凯月跟着爸爸去了九寨沟,听爸爸说九寨沟风景优美,凯月就打算多拍一些照片回来。凯月的数码相机一般每张照片需要占用存储卡980KB的空间,现在凯月带了一张容量为256MB的存储卡。则从理论上讲,凯月最多能拍的照片张数为(   )。

A 261  B 267  C  130  D  131

7.图—1所示为某文件的属性窗口,根据该属性窗口显示的信息,下列说法中错误的是(  

 

 

 

 

 

 

 

 

 

 

 


                                图—1

 

A该文件可以用暴风影音软件正常打开;

B该文件占用硬盘空间是3.60M字节;

C该文件是一个经过MP3压缩技术产生的音频文件;

D该文件只能用媒体播放器才能正常打开。

8.金明用图像处理软件设计了一副图像参加少儿想象画设计大赛,这幅画像的文件名是“未来的飞机.bmp”,大小是10.34MB。金明现在想通过电子邮件进行投稿,可以发现邮箱发送的附件不能超过6MB。对于金明来说,在不影响原作图像质量的前提下,下列做法中最合适的是(   )。

A利用WinRAR软件将图像压缩后再以附件发送

B通过软件将该图像的分辨率设置为640*480

C在该图像中截取最精华的部分,然后将该部分作为图像文件发送

D将该图像的颜色由32位彩色图像修改为8位彩色图像。

9.为了从图—2所示的图像中截取得到如图—3所示的鸟巢图像,应选择下列软件中的(   )来完成此操作。

 

 

 

 


     图—2                  图—3

A  PASCAL    B  photoShop  C  QBASIC   D Access

10.信息时代的我们有很多的网上密码,如QQ、电子邮箱、电子公告板等应用都需要用到密码。从网络安全的角度来选择,下列密码中相对最安全的密码的是(   )。

A  123456   B  20090901  C  zjsxZHNG&8002   D  wangjiegang

11.计算机系统中的“防火墙”主要作用是(   )。

A从一定程度上抵御来自网络的非法入侵和攻击;

B检测网络中的所有电脑是否感染病毒;

C通过在线升级可以达到杀除所有的计算机网络病毒;

D网络中心用来防御火灾的隔离设备的总称。

12.人们在为自己的网站设置域名时总是让域名与网站的功能、内容特点相吻合。下列网络域名中,最有可能是网上电子公告板的域名是(    )。

A  www.cctv.com  B club@sohu.com   C bbs.sina.com.cn  D Dzggb.163.com

13.有如图—4所示的流程图,则变量S保存的数值是(   )。

A  N的所有约数的个数

B  N的约数中,所有大于1且小于N的约数的个数。

C  N的约数中,所有大于1且小于N的约数的对数。

D  N的所有约数的总和。

 

 

 

 

 

输入正整数n

图—4

 

 

 

 

S     0I     2

 

 

 

 


 

Y

ISQRT(N)?

 

 


 

N

N

N能被I整除?

S    S+1

I    I+1

输出变量S的值

 

 

 

 

 

 

 

 

 


14.若对一棵完全二叉树按从上到下,从左到右进行编号,设根节点所在层为第1层,且根节点编号为1,则该树的第i层第j个节点的编号为(   )。

A 2i-1+j   B 2i+j  C 2i+j-1  D 2i-1+j-1

15.设栈S的初始状态为空,现有5个元素组成的队列{12345},对该序列在S栈上依次进行如下操作(从队首元素1开始进行操作,出栈后不再进栈):进栈,进栈,进栈,出栈,进栈,出栈,进栈,则先后出栈的元素序列是(   )。

A  43    B  21     C  54321  D  34

二、问题求解(5+5=10分)

   1.杰克在A地,他要坐着马车前往B地(从A地出发到达B地或从B地出发到达A地都需要10小时)。已知AB两地之间每隔1小时都有一辆马车准点出发前往对方(24小时不间断),现在杰克坐着马车前往B地,他在途中一共可以看到多少辆从B地出发前往A地的马车?(包括在出发地A看到的那辆马车和在目的地B看到的那辆马车)

 

 

   2KAD部落在数字。KAD部落是个奇怪的部落,他们认为在数字“0123456789中,“9是个不吉利的数字,于是在他们的数字使用中,总是会排除这个数字。现在KAD部落想给一批人群按照12345、……、i-1ii+1、……的顺序编号(那当然任何编号中不会出现数字“9)。问,现在一共有200个人参与编号,那么最后那个人的编号是什么?

三、阅读程序并写出运行结果(8+8+8+8

1.program test;

 var x,y,z,a:integer;

  begin

x:=123;y=232;

z:=x div 10; a:=y mod 15;

x:=z+a;

z:=x-z,a:=x-z;

write(z,’ ‘,a);

end.

输出

 

2.program tese1;

  var s,i,j:integer;

   a:array[1..10] of integer;

   begin

   s:=0;

i:=0;

for j:=1 to 10 do a[j]:=1;

 while i<10 do

 begin

  i:=i+1;

  s:=s+a[i];

  for  j:=i+1 to 10 do a[j]:=a[j]+1;

  end;

writeln(‘s=’,s);

end.

输出:

3program test;

   var i,a,b:integer;

   function f(i:integer):integer;

   begin

if(i=0) or (i=1) then f:=3

else f:=i-f(i-2);

   end;

   begin

i:=103;a:=i div 10;b:=i mod 10;

write(f(a),’ ‘,f(b));

end.

输出

4.program test04;

  const n=1000000;

  const max=16;

  var i,j:longint;

  a:array[1..n] of integer;

  x:longint;

  begin

  for i:=1 to max do

  begin

   read(x);

   a[x]:=a[x]+1;

   end;

   for j:=n downto 1 do if a[j]<>0 then for i:1 to a[j] do write(j,’ ‘);

end.

  输入:1 2 3 4 100 200 300 400 1 2 3 4 1000 2000 3000 4000

  输出:

 

四、完善程序。

1.【国庆长假】(2+2+2+2+2=10分)

 味子有8天的国庆长假。8 天长假听起来很美,可是味子却颇感头痛。因为在这个长假里,味子既想完成老师布置的total项作业(每项作业都需要1个小时来完成),又想在假期里好好玩玩。

味子也不知道这两个事情是否能两全其美,于是她编写了一个程序来进行判断。如果程序输出“yes”,说明味子既可以享受自己设想的所有玩耍活动,又可以完成老师布置的所有作业。如果程序输出“no”,说明如果想享受全部玩耍,味子必定不能完成所有作业。在后者这种情形下,作为好学生的味子必定会砍掉一些玩耍而保证作业的完成。

下列程序中的数组a用来保存8天中所有时刻的情况,a[I,j]表示第i天时刻j开始的1小时是否安排了玩耍,1表示有安排,0表示没有安排玩耍。按照味子的生活规律,每天从早上8点到17点之间的9个小时可以用来安排玩耍或做作业。

程序首先读入的一行包含两个整数ntotal,表示味子设想的玩耍活动会在n天中有安排,total表示味子所有作业的数量。接下来是n行,每行第一个整数表示当天是长假的第几天,后面是若干对整数stde,分别表示当天从时刻st(都为整点时刻)开始有一项玩耍,该玩耍会持续de小时,也就是说,在stst+de的这段时间内,味子是不能做任何作业的。每行最后是一对用空格分隔的0,表示该行数据输入的结束。这两个零的作用仅仅用来表示该行输入数据的结束,没有其他含义。

程序输出只有一行。如果在享受n天内设想的所有玩耍的前提下,味子还能完成所有作业,则输入“YES”,否则输出“NO”。

请你帮助味子完成下面的程序。

program test_0905;

var i,j,i1,j1,st,de,n,total:integer;

a:arrya[1..8,8..17] of integer;

begin

for i:=1 to 8 do

 for j:=8 to 17 do a[i,j]:=0;

readln(n,           );

for i:=1 to n do

begin

read(i1);read(st,de);

repeat

 for j1:=st to st+de do a[i1,j1]:=             ;

read(st,de);

until ((st=0) and (de=0));

end;

for i:=1 to 8 do

   for j=8 to 17 do

if a[i,j]=0 then total:=total-1;

if          then write(‘        ’)else write(‘         ’);

end.

   输入样例:

4         5

1 8 2 12 2 16 1 0  0

4 8 8 0 0

7 8 5 13 1 0 0

8 8 1 9 1 11 3 14 1 0 0

输出样例:Yes

 

2. 【傻瓜电梯】(3+3+3+3+3+3=18分)

所谓傻瓜电梯指的是在响应用户请求时缺乏相应的“智商”,在上升或下降的过程中不能把中途的乘客捎带入电梯,而只会严格按照用户发出请求的先后顺序依次完成任务。

比如,原来电梯在1楼,首先6楼有一位乘客发出请求,要求由6楼乘坐到10楼去,此时电梯马上会上去,但在电梯上升到3楼时,另外一位乘客发出请求由5楼乘坐到8楼去,傻瓜电梯却不会在上升途中把5楼的乘客捎带上去,而只会先把6楼的乘客送到10楼,然后再下来把5楼的乘客送到8楼。

傻瓜电梯由i楼上升到i+1楼(或下降1楼)的时间都是3秒,每到达一个楼层,不管进出乘客有多少,所耽搁的时间都是6秒。现在告诉傻瓜电梯n个用户请求,计算傻瓜电梯把所有乘客送到目标楼层时总共所需要的时间。

输入的第一行包含两个整数x1<=x<=50)和n(1<=n<=100),分别表示傻瓜电梯开始所在的楼层和一共所有的请求数目。下面有n行,每行包含3个整数,依次表示该请求发出的时刻、乘客目前所在的楼层和将要去的目标楼层。其中请求发出的时间以秒为时刻单位,最大可能的值是2000。如果某两个请求的发出时间相同,则按照输入时的先后顺序依次处理。

输出只包含一行一个整数,表示傻瓜电梯把所有乘客送到目标楼层后总共所需要的时间(从得到第一条请求时开始计算时间),单位是秒。

下列是用来解决该问题的程序,请将程序补充完整。

program test_0906;

const maxn=100+5;

var n,start:longint;

ti,st,sf:array[1..max] of longint;

procedure inputdata;

var i:longint;

begin

readln(start,n);

for i:=1 to n do readln(ti[i],st[i],sf[i]);

end;

prodedure solveprob;

var I,j,k,tmp,ans:longint;

begin

for i:=1 to n-1 do

begin

  k:=          ;

 for j:=i+1 to n do

  if ti[k]>ti[j] then k:=            ;

if  k<> I then

begin

tmp:=ti[k];

ti[k]:=tmp;

tmp:=st[k];

st[k]:=st[i];

st[i]:=tmp;

tmp:=sf[k];

sf[k]:=           ;

st[i]:=tmp;

end;

ans:=0;

for i:=1 to n do

begin

 if(i>1) and (ti[i]>ans) then ans:=ti[i];

ans:=ans+abs(st[i]-start)*3;

ans:=ans+                        ;

if star<>st[i] then ans:=                    ;

ans:=ans+6;

start:=sf[i];

end;

writeln(ans);

end;

begin

                      ;

Solveprob;

End.

输入样例:

3 4

10 10 2

 18 19

2 1 12

8 6 10

输出样例:162

 

 

 

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有