宁波市第25届中小学生程序设计竞赛
初中组初赛试题
 一、选择题(每题1.5,30分。每小题只有唯一一个答案)
1、在宁波市中小学生程序设计比赛复赛(上机编程)时,以下不能使用的编程语言是:
ATurbo Pascal  BFree Pascal  CDC++
2、在Free Pascal中按功能键F7F4时,以下叙述正确的是:
AF4逐条语句执行(包括子程序),F7运行至光标位置
BF7逐条语句执行(包括子程序),F4运行至光标位置
CF4逐条语句执行(不包括子程序),F7运行至光标位置
DF7逐条语句执行(不包括子程序),F4运行至光标位置
3、使用高级语言编写的程序称之为:
A)源程序  B)编辑程序  C)编译程序  D)链接程序
4、如果自己的程序进入了死循环,应当按什么键终止?
ACtrl+C  BCtrl+D  CAlt+C  DAlt+D
5、参加宁波市中小学生程序设计比赛复赛(上机编程)时,以下哪种行为是允许的?
A)访问互联网或局域网  B)使用U盘或光盘 
C)使用自带的草稿纸     D)考试时发现机器有问题,举手示意监考人员处理
6、参加宁波市中小学生程序设计比赛复赛(上机编程)时,你有一个程序被判0分。你发现程序其实是正确的,但存在以下问题,提出申诉,以下哪个申诉会被接受?
A)源程序文件名和存放源程序的目录名错误
B)只是存放源程序的目录名错误,源程序文件名是正确的
C)存放源程序的目录名正确,源程序文件名是错误的
D)根据比赛规则,以上申斥都不会被接受
7、在Free Pascal语言,以下关于各种数据类型占内存空间大小的描述错误的是:
A每个integer型占2个字节    B每个longint型占4个字节
C每个boolean型占2个字节  D每个extended型占10个字节
8、使用数组逐层保存完全二叉树结构,则以下叙述正确的是:
A)逻辑结构为完全二叉树,物理结构为数组 
B)物理结构为完全二叉树,逻辑结构为数组
C)逻辑结构和物理结构均为完全二叉树     
D)逻辑结构和物理结构均为数组
9、关键码相同的二个元素,原来在排在前面的还能保证排在前面,这种排序算法我们称它是稳定的。冒泡排序、选择排序、插入排序、快速排序中,一般意义上是稳定的有几种:
A1     B2     C3     D4
10、在Free Pascal中编辑当前源程序时,可以使用快捷键Ctrl+F7增加调试程序时监视的变量,但如果不小心错按为Ctrl+F6时,会将当前源程序窗口隐藏起来。此时,可以使用菜单命令“Windows/List”调出Windows List对话框,在该对话框中选中隐藏的当前正在编辑的源程序,然后按下面哪个命令按钮可以显示当前正在编辑的源程序?
AOk  BNot Hide  CShow  DDelete
11、当n>=10000时,以下四个程序段运行后count的值最大的是:
A  count:=0;
while n>=1 do begin
  for j:=1 to n do
      count:=count+1;
  n:=n div 2;
end;
B count:=0;
for i:=1 to n do begin
  m:=trunc(n/i);
  for j:=1 to m do
      count:=count+1;
end;
Ccount:=0;
k:=trunc(sqrt(n));
for j:=1 to k do begin
  for i:=1 to j*j do
      count:=count+1;
end;
   D count:=0;
n:=4*n;
k:=trunc(sqrt(n));
for j:=1 to k do begin
  for i:=1 to j do
      count:=count+1;
end;
12、结构化程序设计的三种基本控制结构为顺序结构、选择结构和循环结构,以下说法正确的是:
A)三种结构都是基本结构,内部不能再有其它结构
B)三种结构都是基本结构,内部除了允许嵌套同一种结构外,不能再有其它结构
C)选择结构和循环结构内部可以嵌套有其它结构,顺序结构不可以嵌套其它结构
D)三种结构内部都可以嵌套其它结构
13、以下属于计算机的基本指令的是:
A)数值和逻辑运算指令        B)存储和输入输出指令
C)控制和转移指令            D)以上都是
14、以下属于汉字输出时使用的编码的是:
A)国标码  B)区位码  C)字形码  D)五笔字形
15、以下存储介质中,一般说来存取速度最快的是:
A)硬盘  B)内存  CU  D)光盘
16宁波学编程哪里好HTTP协议的默认端口是:
A8080  B80  C25  D15
17、有二个图像AB,其中AB能更好地表现图像的彩和层次,B在放大或缩小时不易失真,那么AB应该属于:
A)位图、位图  B)矢量图、位图 
C)位图、矢量图  D)矢量图、矢量图
18、用来描述网页中的文本、图像、超链接和表格等基本元素的语言是:
ABASIC  BPascal  CFrontPage  DHTML
19、标准ASCII码最多能表示的字符个数是:
A128   B64  C256  D8
20、下列属于信息的是:
A)《宁波日报》  B)数码相机  C2010年温歌华冬奥会实况直播  D)音乐光盘
二.问题求解(每题5分,共10分)
 1、一副扑克牌除去大小王外,有52张牌。其中有黑桃(Spade)、红心(Heart)、方块(Diamond)、梅花(Club)四种花,每种花点数从小到大各有13张,它们是:2345678910JQKA
  在上述52张中任取5张,取得(four of a kind,即四张点数相同的牌加一张另外点数的牌)的取法数有13*48=624种;取得辅鲁(full house,即三张点数相同另加二张点数相同牌)的取法数有多少种?请注意,二种取法中,只要有一张牌花不同或点数不同,这二种取法就是不同的。
 
2、有若干堆硬币,甲乙二人参加游戏,游戏规则如下:
1)由甲开始,二人轮流取硬币,每次取时只能从某一堆中取若干个硬币,可以把该堆硬币全部取完,最少可以只取一个硬币,但不能不取硬币。
2)最后取完最后一个硬币的人为胜者。
比如一开始有二堆硬币,第一堆1枚,第二堆2枚,有几种取法:
1)甲取第一堆1枚,乙取第二堆1枚,甲取第二堆1枚,甲获胜!
2)甲取第一堆1枚,乙取第二堆2枚,乙获胜!
3)甲取第二堆1枚,乙取第一堆1枚,甲取第二堆1枚,甲获胜!
4)甲取第二堆1枚,乙取第二堆1枚,甲取第一堆1枚,甲获胜!
5)甲取第二堆2枚,乙取第一堆1枚,乙获胜!
显然,当甲先取第二堆1枚时,甲能获胜!当甲采取其它取法时,当乙取对时,甲会失败的。
但如果一开始二堆硬币数都为2枚,则甲无论在哪一堆中取多少个,乙可以在另外一堆中取同样多个,乙获胜,甲失败。
现在有四堆硬币,第1堆有1枚硬币,第2堆有2枚硬币,第3堆有4枚硬币,第4堆有5枚硬币。问甲先取,在大家都使用最佳方法的情况下,甲能否获胜?如果甲能获胜,请写出第一次在第几堆取多少枚硬币才能获胜?如果不能获胜,则只要写上“No”
 
三.阅读程序,求程序运行输出结果(每题8分,共32)
1题:
 Program cz2010_1;
var a,b,c,d,n,i,j:longint;
    find:boolean;
    f:array[0..19]of longint;
 begin
  n:=-1;i:=1;
  while n<19 do begin
      i:=i+1;find:=false;
      for j:=2 to trunc(sqrt(i)) do
        if i mod j=0 then begin
            find:=true;break;
        end;
      if not find then begin
        n:=n+1;f[n]:=i;
      end;
  end;
  readln(a,b,c,d);
  n:=n+1;
  a:=((f[a]*f[b]-f[c]*f[d]) mod n+n) mod n;
  b:=((f[b]* f[c]-f[d]* f[a]) mod n+n) mod n;
  c:=((f[c]* f[d]-f[a]* f[b]) mod n+n) mod n;
  d:=((f[d]* f[a]-f[b]* f[c]) mod n+n) mod n;
  writeln(a,' ',b,' ',c,' ',d);
end.
【输入】:2  3  5  7
【输出】:______________
 2题:
Program cz2010_2;
var a:array[1..30]of char;
    s,n,i,x,y,z:longint;c:char;
 begin
  s:=0;readln(x,y);
  while not eoln do begin
      read(c);
      if c<='9' then     s:=s*x+ord(c)-ord('0')
      else     s:=s*x+ord(c)-ord('A')+10;
  end;
  readln;write(s,’ ‘);  n:=0;
  while s>0 do begin
      n:=n+1;z:=s mod y;