回 帖 发 新 帖 刷新版面

主题:[转帖]第十届全国青少年信息学奥林匹克联赛初赛试题

第十届全国青少年信息学奥林匹克联赛初赛试题
(普及组 Pascal语言 二小时完成)

一、选择一个正确答案代码(A/B/C/D/E)填入每题的挂号内
1.美籍匈牙利数学家 冯•诺依曼 对计算机科学发展所做出的贡献是:( )
   A、提出理想计算机数学模型,成为计算机科学理论基础
   B、是世界上第一个编写计算机程序的人
   C、提出存储程序工作原理,并设计出第一台具有存储程序功能的计算机EDVAC
   D、采用集成电路作为计算机的主要功能部件
   E、指出计算机性能将以每两年翻一番的速度向前发展
2.下列哪个不是CPU(中央处理单元)(  )
   A、Intel Itanium
   B、DDR SDRAM
   C、AMD Athlon64
   D、AMD Opteron
   E、IBM Power 5
3、下列网络中常用的名字缩写对应的中文解释错误的是( )
   A、WWW(World Wide Web):万维网
   B、URL(Uinform Resource Locator):统一资源定位器
   C、HTTP(Hypertext Transfer Protocol):超文本传输协议
   D、FTP  (File Transfer Protocol):快速传输协议
   E、TCP (Transfer Control Protocol):传输控制协议
4、下面哪个部件对于个人桌面电脑的正常运行不是必需的( )
   A、cpu
   B、显卡(图形卡)
   C、光驱
   D、主板
   E、内存
5、下列哪个软件属于操作系统软件( )
   A、Microsoft Word
   B、金山词霸
   C、Foxmail
   D、WinRAR
   E、Red Hat Linux
6、下列哪个不是计算机存储设备( )、
   A、文件管理器
   B、内存
   C、高速缓存
   D、硬盘
   E、U盘
7、下列说法中错误的是( )
   A、CPU的基本功能就是执行指令
   B、CPU访问内存的速度快于访问高速缓存的速度
   C、CPU的主频是指CPU在1秒内完成的指令周期数
   D、在一台计算机内部,一个内存地址编码对应唯一的一个内存单元
   E、数据中线的宽度决定了一次传递数据量的大小
8、彩色显示器所显示的五彩斑斓的色彩,是由红色,蓝色和( )色混合而成的
   A、紫色    B、白色   C、黑色   D、绿色   E、橙色
9、用静电吸附磨粉后转移到纸张上,是那种输出设备的工作方式( )
   A、针式打印机
   B、喷墨打印机
   C、激光打印机
   D、笔式绘图仪
   E、喷墨绘图仪
10、一台计算机如果要利用电话线上网,就必须配置能够对数字信号和模拟信号进行互相转换的设备,这种设备是( )
   A、调制解调器
   B、路由器
   C、网卡
   D、网关
   E、网桥
11、下列哪个不是数据库软件的名称( )
   A、MYSQL
   B、SQL Sever
   C、Oracle
   D、金山影霸
E、Foxpro
12、下列哪个程序设计语言不支持面向对象的程序设计方法( )
   A、C++
   B、Object Pascal
   C、C
   D、Smalltalk
   E、Java
13、由3个a,1个b和2个c构成的所有字符串中,包含子串“abc”的共有( )个
   A、20   B、8   C、16   D、12   E、24
14、某车站呈狭长形,宽度只能容下一台车,并且只有一个出入口。已知某时该车站站台为空,从这一时刻开始出入记录为:“进出进进出进进进出出进出”。假设车辆入站的顺序为1,2,3……,则车辆出站的顺序为( )
   A、1,2,3,4,5
   B、1,2,4,5,7
   C、1,3,5,4,6
   D、1,3,5,6,7
   E、1,3,6,5,7
15、二叉树T,已知其前序遍历序列为1 2 4 3 5 7 6,中序遍历序列为4 2 1 5 7 3 6,其后序遍历序列为
   A、4 2 5 7 6 3 1
   B、4 2 7 5 6 3 1
   C、4 2 7 5 3 6 1
   D、4 7 2 3 5 6 1
   E、4 5 2 6 3 7 1
16、满二叉树的叶节点为N,则它的节点总数为( )
   A、N
   B、2N
   C、2N-1
   D、2N+1
   E、2^N-1
17、十进制2004等于八进制数( )
   A、3077
   B、3724
   C、2766
   D、4002
   E、3755
18、(2004)10 +(32)16的结果是( )
   A、(2036)10
   B、(2054)16
   C、(4006)10
   D、(100000000110)2
   E、(2036)16
19、在下图,从端点( )出发存在一条路径可以遍历图中的每条边一次,而且仅遍历一次











20、某大学计算机专业的必修课及期先修课程如下表所示:
课程
代号    C0    C1    C2    C3    C4    C5    C6    C7
课程
名称    高等
数学    程序
设计
语言    离散
数学    数据
结构    编译
技术    操作
系统    普通
物理    计算
机原

先修
课程            C0,C1    C1,C2    C3    C3,C7    C0    C6
请判断下列课程安排哪个是不合理的( )
   A、C0,C6,C7,C1,C2,C3,C4,C5
   B、C0,C1,C2,C3,C4,C6,C7,C5
   C、C0,C1,C6,C7,C2,C3,C4,C5
   D、C0,C1,C6,C7,C5,C2,C3,C4
   E、C0,C1,C2,C3,C6,C7,C5,C4

二、问题求解(5分一题,共10分)
1、一个家具公司生产桌子和椅子。现有113个单位的木材。每张桌子要使用20个单位的木材,售价是30元;每张椅子要用16个单位的木材,售价是20元。使用已有的木材生产桌椅(不一定要用光木材)做多可以买_____元钱。
2、75名儿童去游乐场玩。他们可以骑旋转木马,坐滑行轨道,乘宇宙飞船。已知其中20人这三种东西都玩过,55人至少玩过其中两种。若每玩一样的费用为5元,游乐场总共收入700,可知有_____名儿童没有玩过其中任何一种。

三、阅读程序(8’一题,共32’)
1、-------------------------------------------
program program1;
Var
  a,b,c,d,e:integer;
  begin
    a:=79 ; b:=34; c:=57;d:=0 ; e:=-1;
    if (a<c) or (b>c) then d:=d+e
    else if (d+10<e) then d:=e+10
    else d:=e-a;
    writeln(d);
  end.
输出:_____________________。
2、-------------------------------------------
program program2;
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、-------------------------------------------
program program3;
var
  u:array[0..3] of integer;
  a,b,c,x,y,z:integer;
begin
  read(u[0],u[1],u[2],u[3]);
  a:=u[0]+u[1]+u[2]+u[3]-5;
  b:=u[0]*(u[1]-u[2] div u[3]+8);
  c:=u[0]*u[1] div u[2] * u[3];
  x:=(a+b+2)*3-u[(c+3) mod 4];
  y:=(c*100-13) div a div (u[b mod 3]*5);
  if ((x+y) mod 2=0) then z:=(a+b+c+x+y) div 2;
  z:=(a+b+c-x-y)*2;
  writeln(x+y-z);
  read(a);
end.
输出:_____________________。
4、-------------------------------------------
program program4              ;
var c:array[1..2] of string[200];
    s:array[1..10] of integer;
    m,n,i:integer   ;
procedure numara;
var cod:boolean;
   i,j,nr:integer;
begin
  for j:=1 to n do begin
        nr:=0;cod:=true;
        for i:=1 to m do
           if c[i,j]='1' then begin
                if not cod then begin
                    cod:=true;inc(s[nr]);nr:=0;
                end
           end
           else begin
                if  cod then begin
                     nr:=1;cod:=false ;
                end
                else inc(nr);
           end;
           if not cod then inc(s[nr]);
        end;
  end;
  begin
      readln(m,n);
      for i:=1 to m do readln(c[i]);
      numara;
      for i:=1 to m do
          if s[i] <>0 then write(i,' ',s[i],' ');
  read(i);
  end.
输出:_____________________。

四、完善程序(共28分)
1、三角形内切圆的面积
题目描述:给出三角形三边的边长,求此三角形内切圆的面积。

输入:三个正实数a、b、c(满足三角形三边关系),表示三角形三边边长。
输出:三角形内切圆的面积,结果四舍五入到小数点后2位
输入样例: 3 4 5
输出样例: 3.14
程序:①②③④⑤
PROGRAM PROGRAM1;
VAR
     A,B,C,R,S,T:REAL;
BEGIN
      READ(A,B,C);
       S :=(  ①  )/2;
       T:=  ②  (S*(S-A)*(S-B)*(S-C));
       R:=T/S;
       WRITELN(3.1415927 * R *  ③   :0:  ④  ;
END.

2..Joseph
题目描述:
原始的Joseph问题的描述如下:有n个人围坐在一个圆桌周围,把这n个人依次编号为1,……,n。从编号是1 的人开始报数,数到m个人出列,然后从出列的下一个人重新开始报数,数到第m个人又出列,……,如此反复直到所有的人全部出列为止。比如当n=6,m=5的时候,出列的顺序依次是5,4,6,2,3,1。
现在的问题是:假设有k个好人和k个坏人。好人的编号是1到k,坏人的编号是k+1到2k。我们希望求出m的最小值,使得最先出列的k个人都是坏人。
输入:
仅有的一个数字是k (0<K<14)。
输出:
使得最先出列的k个人都是坏人的m的最小值。
输入样例:
4
输出样例:
30
程序:
program progaram1;
var
  i,k,m,start:longint;
  find:boolean;
function check(remain:integer):boolean;
var result:integer;
begin
  result:=____(1)____ mod remain;
  if ____(2)____ then begin
start:=result; check:=true;
  end
  else check:=false;
end;
begin
  find:=false;
  read(k);
  m:=k;
  while ____(3)____ do begin
find:=true; start;=0;
for i:=0 to k-1 do
  if (not check(____(4)____)) then begin
     find:=false; break;
  end;
inc(m);
  end;
  writeln(____(5)____);
end.
参考答案
一、1.C   2.B    3.D    4.C      5.E     6.A    7.B      8.D  9.C  10.A   

11.D  12.C   13.D   14E  15.B  16.C  17.B  18.D  19.E  20.D

二、1.160元              2.10人

三、 1.-80       2.Dog-is-clever

      3 . 263              4 .  1  12588  2   12337  3   12339

四、  1 . a+b+c    SQRT  R   2

    2 .  start+m-1    result>=k    not(find)   2*k-I   m-1
[em5][em5]

回复列表 (共2个回复)

沙发

谢谢!关键我想问一下,答案可靠吗?

板凳

我想应该可靠吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册