回 帖 发 新 帖 刷新版面

主题:谁有近几期信息学奥赛初赛题及参考答案???

很急啊,帮一下忙,谢谢.

回复列表 (共7个回复)

沙发

告诉我你的邮箱,我给你发过去.

板凳

2001的:
   第八届全国青少年信息学奥林匹克联赛(NOIP2002)试题
(普及组PASCAL语言二小时完成)
全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效

一.选择一个正确答案代码(A/B/C/D,填入每题的括号内(每题1.5分,多选无分,共30分)
1)微型计算机的问世是由于(    ) 的出现。
A) 中小规模集成电路    B) 晶体管电路    C) (超)大规模集成电路    D) 电子管电路
2)下列说法中正确的是(    ) 。
A) 计算机体积越大,其功能就越强
    B) CPU的主频越高,其运行速度越快
    C) 两个显示器屏幕大小相同,则它们的分辨率必定相同
D)点阵打印机的针数越多,则能打印的汉字字体越多
3)Windows98中,通过查找命令查找文件时,若输入F*.? , 则下列文件(    ) 可以被查到。
A) F.BAS     B) FABC.BAS     C) F.C     D) EF.
4)CPU处理数据的基本单位是字,一个字的字长(    ) 。
A) 为8个二进制位     B) 为16个二进制位
    C) 为32个二进制位    D) 与芯片的型号有关
5)资源管理器的目录前图标中增加"+"号,这个符号的意思是(    ) 。
A) 该目录下的子目录已经展开    B) 该目录下还有子目录未展开
    C) 该目录下没有子目录          D) 该目录为空目录,
6)下列哪一种程序设计语言是解释执行的(    ) 。
A) Pascal     B) GWBASIC     C) C++    D) FORTRAN
7)启动WORD的不正确方法是(    ) 。
A) 单击Office工具栏上的Word图标
    B) 单击"开始"→"程序"→Word
    C) 单击"开始"→"运行",并输入Word按回车
    D) 双击桌面上的"Word快捷图标"
8)多媒体计算机是指(    ) 计算机。
A) 专供家庭使用的    B) 装有CDROM的
    C) 连接在网络上的高级    D) 具有处理文字、图形、声音、影像等信息的
9)在树型目录结构中,不允许两个文件名相同主要是指(    ) 。
A) 同一个磁盘的不同目录下    B) 不同磁盘的同一个目录下
    C) 不同磁盘的不同目录下、    D) 同一个磁盘的同一个目录下
10)用画笔(Paintbrush)绘制图形并存储在文件中,该图形文件的文件名缺省的后缀为(    ) 。
 A) .jpg     B) .bmp     C) .gif    D).tiff
t11)E-ml地址中用户名和邮件所在服务器名之间的分隔符号是(    ) 。
E A) #    B) @    C) &    D) $
12)(0.5)10=(    ) 16.
A) 0.1    B) 0.75    C) 0.8    D) 0.25
13)IP v4地址是由(    ) 位二进制数码表示的。
 A) 16    B) 32    c) 24    D) 8
14)算式(2047)10一(3FF)16+(2000)8的结果是(    ) 。
 A) (2048)10    B) (2049)10    C) (3746)8    D) (1AF7)16
15)下列叙述中,错误的是(    ) 
A) Excel中编辑的表格可以在Word中使用
    B) 用Word编辑的文本可以存成纯文本文件
    C) 用记事本(Notepa    D) 编辑文本时可以插入图片
    D) 用画笔(Paintbrush)绘图时可以输入文字
16)一个向量第一个元素的存储地址是100,每个元素的长度是2,则第5个元素的地址是(    ) 
A) 110    B) 108    C) 100    D) 109
17)在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是(    ) 。
A) 希尔排序    B) 起泡排序    C) 插入排序    D) 选择排序
18)在计算机网络中,Modem的功能是(    )
A) 将模拟信号转换为数字信号    B) 将数字信号转换为模拟信号
C) 实现模拟信号与数字信号的相互转换    D) 实现将模拟信号的数字信号
19)设有一个含有13个元素的Hash表(O~12),Hash函数是:H(key)=key % 13,其中%是求余数运算。用线性探查法解决冲突,则对于序列(2、8、31、20、19、18、53、27),18应放在第几号格中(    ) 。
A) 5    B) 9    C) 4    D) 0
20)要使1…8号格子的访问顺序为:82、63、73、1、4,则下图中的空格中应填人(    ) 。
1    2    3    4    5    6    7    8
4    6    1    -1        7    3    2
A) 6    B) O    C) 5    D) 3

3 楼

二.问题求解: 
1.    如下图,有一个无穷大的的栈S,在栈的右边排列着1,2,3,4,5共五个车厢。其中每个车厢可以向左行走,也可以进入栈S让后面的车厢通过。现已知第一个到达出口的是3号车厢,请写出所有可能的到达出口的车厢排列总数(不必给出每种排列)。
出口←    ←     1    2    3    4    5 
    S↓    

2.将N个红球和M个黄球排成一行。例如:N=2,M=3可得到以下6种排法:
红红黄黄黄 红黄红黄黄 红黄黄红黄 黄红红黄黄 黄红黄红黄 黄黄黄红红
问题:当N=4,M=3时有多少种不同排法?(不用列出每种排法)

三.阅读程序:
program exp1;
var i,j,k,n,,L0,L1,LK:Integer;
a :array [0..20] of integer;
begin
readln(n,k);
for i:=0 to n-1 do a[i]:=i+1;
a[n]:=a[n-1];L0:=n-1; Lk:=n-1;
for I:=1 to n-1 do
begin
 L1:=L0-k; if (l1<0) then L1:=L1+n;
If (l1=Lk) then begin
                 A[L0]:=a[n]; Lk:=Lk-1; a[n]:=a[Lk]; l0:=lk
                End;
Else
 Begin
     A[l0]:=a[l1];l0:=l1;
End;
End;
A[L0]:=a[n];
For I:=0 to n-1 do write(a[I]:40;
Writeln;
End.
输入:10   4
输出:

2)program exp2;
var n,jr,jw,jb:integer; 
ch1:char; 
ch:array[1..20]d char; 
begin
readln(n);
for i:=1 to n do read(ch[i]):
jr:=1;jwz=n;jb:=n;:
while (jr<=jw)do
begin
if(ch[jw]='R') 
then begin
ch1:=Ch[jr];Ch[jr]:=ch[jw];ch[jw]:=ch1:jr:=jr+13
end
else if ch[jw]='W'
then jw:=jw-1
else begin
ch1:=ch[jw];ch[jw]:=ch[jb];ch[jb]:=ch1;jw:=jw-1;jb:=jb-1;
end
end;
for i:=1 to n do write(ch[i]);
writeln;
end.
输入:10
RBRBWWRBBR
输出:

3)Pmgram exp3;
Var I,j,p,n,q,s:integer;
a :array[1..20]of integer;
begin
readln(p,n,q);j :=21;
while (n>0)do 
begin
j:=j-1;a[j]:=n mod 10;n:=n div 10;
end;
s:=0;
for i:=j t0 20 do s:=s*p+a[i];
writeln(s);j :=21;
while (s>O)do
begin j:=j-1;a[j]:=s mod q;s:=s div q;end;
for i:=j to 20 do write(a[i]);readln;
end.
输入:7 3051 8
输出:

四.完善程序:
1.问题描述:将n个整数分成k组(k≤n,要求每组不能为空),显然这k个部分均可得到一个各自的和s1,s2,……sk,定义整数P为:
P=(S1-S2)2+(S1一S3)2+……+(S1-Sk)2+(s2-s3)2+……+(Sk-1-Sk)2
问题求解:求出一种分法,使P为最小(若有多种方案仅记一种〉
程序说明:
数组:a[1],a[2],...A[N]存放原数
s[1],s[2],...,s[K]存放每个部分的和
b[1],b[2],...,b[N]穷举用临时空间
d[1],d[2],...,d[N]存放最佳方案
程序:
program exp4;
Var i,j,n,k : integer;
a :array [1..100] of integer;
b,d:array [0..100] of integer;
s :array[1..30] of integer;
begin 
readln(n,k);
for I:=1 to n do read(a[I]);
for I:=0 to n do b[I]:=1;
cmin:=1000000;
while (b[0]=1) do
begin
    for I:=1 to k do   ①    
for I:=1 to n do 
     ②    
sum:=0;
for I:=1 to k-1 do
for j:=   ③   
sum:=sum+(s[I]-s[j])*(s[I]-s[j]);
if    ④     then 
begin
cmin:=sum;
for I:=1 to n do d[I]:=b[I];
end;
j:=n;
while     ⑤      do j:=j-1;
b[j]:=b[j]+1;
for I:=j+1 to n do     ⑥     
end;
writeln(cmin);
for I:=1 to n do write(d[I]:40);
writeln;
end.
2. 问题描述:工厂在每天的生产中,需要一定数量的零件,同时也可以知道每天生产一个零件的生产单价。在N天的生产中,当天生产的零件可以满足当天的需要,若当天用不完,可以放到下一天去使用,但要收取每个零件的保管费,不同的天收取的费用也不相同。
问题求解:求得一个N天的生产计划(即N天中每天应生产零件个数),使总的费用最少。
输入:N(天数N<=29)
每天的需求量(N个整数)
每天生产零件的单价(N个整数)
每天保管零件的单价(N个整数)
输出:每天的生产零件个数(N个整数)
例如:当N=3时,其需要量与费用如下:
    第一天    第二天    第三天
需要量    25    15    30
生产单价    20    30    32
保管单价    5    l0    0
生产计划的安排可以有许多方案,如下面的三种:
第一天    第二天    第三天    总的费用
25    15    30    25*2O+15*30+30*32=1910
40    0    30    40*20+15*5+30*32=1835
70    0    0    70*20+45*5+30*10=1925
程序说明:
b[n]:存放每天的需求量
c[n]:每天生产零件的单价
d[n]:每天保管零件的单价
e[n]:生产计划
程序:
Program exp5;
Var
i,j,n,yu,j0,j1,s:integer;
b,c,d,e: array[0..30]of integer; begin
readln(n);
for i:=1 to n do readln(b[[i],c[I],d[i]];
fori:=1 to n do e[i]:=0;
   ①   :=10000;c[n+2]:=0;b[n+1]:=0;jO:=1;
while (jO<=n)do
begin
yu:=c[j0]; j1:=jO; s:=b[j0];
while    ②    do
begin
     ③    j1:=j1+1;s:=s+b[j1]; 
end;
   ④      jO:=j1+1;
end;
for i:=1 to n do      ⑤      
readln; 
end.
答案没有

4 楼

2003的:
  第九届分区联赛普及组初赛试题
●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●  
 
一.选择一个正确答案代码(A/B/C/D/E),填入每题的括号内(每题1.5分,共30分) 
  1.下列计算机设备中,既是输入设备,又是输出设备的是( )。 
    A)键盘 B)触摸屏 C)扫描仪 D)投影仪 E)数字化仪 
  2.下列分辨率的显示器所显示出的图像,最清晰的是( )。 
    A)800*600 B)1024*768 C)640*480 D)1280*1024 E)800*1000 
  3.下列说法中,正确的是( )。 
    A)在内存中,可执行程序用二进制码表示,源程序用八进制表示。
    B)程序和数据在内存中都是用二进制码表示的。
    C)内存中数据的存取是以二进制位为单位的。
    D)中央处理器CPU执行的每条指令的长度都不同。
    E)一般来说,在计算机内部,中文信息用十六进制表示,英文信息用八进制表示。 
  4.下列说法中,错误的是( )。 
    A)程序是指令的序列,它有三种结构:顺序、分支和循环。
    B)地址总线决定了中央处理器CPU所能访问的最大内存空间的大小。
    C)中央处理器CPU内部有寄存器组,用来存储数据。
    D)不同厂家生产的CPU所能处理的指令集不一定相同。
    E)数据传输过程中不可能会出错。 
  5.CPU访问内存的速度比访问下列哪个存储设备要慢( )。 
    A)寄存器 B)硬盘 C)软盘 D)磁带 E)光盘 
  6.下列电子邮件地址,正确的是( )。 
    A)wang@hotmail.com B)cai@jcc.pc.tool@rf.edu.jp
    C)162.105.111.22 D)ccf.edu.cn
    E)http://www.sina.com 
  7.数字图像文件可以用下列哪个软件来编辑( )。 
    A)画笔(Paintbrush) B)记事簿(Notepad) C)Recorder
    D)WinRAR E)MidiSoft 
  8.下列哪个软件不是操作系统软件的名字( )。 
    A)Windows XP B)DOS C)Linux D)OS/2 E)Arch/Info 
  9.下列哪个不是个人计算机的硬件组成部分( )。 
    A)主板 B)操作系统 C)电源 D)硬盘 E)软驱 
  10.图灵(Alan Turing)是( )。 
    A)美国人 B)英国人 C)德国人 D)匈牙利人 E)法国人 
  11.第一个给计算机写程序的人是( )。 
    A)Alan Mathison Turing
    B)Ada Lovelace
    C)John von Neumann
    D)John McCarthy
    E)Edsger Wybe Dijkstra 
  12.十进制数2003等值于二进制数( )。 
    A)11111010011 B)10000011 C)110000111 D)010000011l E)1111010011 
  13.运算式(2008)10-(3723)8的结果是( )。 
    A) (-1715)10 B) (5)10 C) (-5)16 D) (111)2 E) (3263)8 
  14.下列关于程序语言的叙述,不正确的是( )。 
    A)编写机器代码不比编写汇编代码容易。
    B)高级语言需要编译成目标代码或通过解释器解释后才能被CPU执行。
    C)同样一段高级语言程序通过不同的编译器可能产生不同的可执行程序。
    D)汇编代码可被CPU直接运行。
    E)不同的高级语言语法略有不同。 
  15.假设A=true,B=false,C=true,D=true,逻辑运算表达式A∧B∨C∧D的值是( )。 
    A)true B)false C)0 D)1 E)NULL 
  16.一个高度为h的二叉树最小元素数目是( )。 
    A)2h+l B)h C)2h-1 D)2h E)2h-l 
  17.已知队列(13,2,11,34,41,77,5,7,18,26,15),第一个进入队列的元素是13,则第五个出队列的元素是( )。 
    A)5 B)41 C)77 D)13 E)18 
  18.下列关于文件的叙述,不正确的是( )。 
    A)一个可执行程序其实也是一个文件。
    B)文件可大可小,大的文件一张软盘装不下。
    C)一个文件夹下面可以有两个同名的文件,只要它们的大小不同就行了。
    D)文件的创建日期和最新修改日期可以在资源管理器中看到。
    E)某些文件的内容可以用记事本(Notepad)看到。 
  19.活动硬盘的容量比固定硬盘的容量( )。 
    A)大 B)小 C)相等 D)不一定大 E)大致相等 
  20.IP地址是一个( )位二进制码。 
    A)8 B)16 C)32 D)64 E)12
二.问题求解(每题5分,共10分) 
  1.现在市场上有一款汽车A很热销,售价是2万美元。汽车A每加仑汽油可以行驶20英里。普通汽车每年大约行驶12000英里。油价是每加仑1美元。不久我公司就要推出新款节油汽车B,汽车B每加仑汽油可以行驶30英里。现在我们要为B制定价格(它的价格略高于A):我们预计如果用户能够在两年内通过节省油钱把B高出A的价钱弥补回来,则他们就会购买B,否则就不会购买B。那么B的最高价格应为    万美元。 
  2.无向图G有16条边,有3个4度顶点、4个3度顶点,其余顶点的度均小于3,则G至少有    个顶点。 

5 楼

三.阅读程序(每题8分,共32分) 
1.program Programl;
  var
   a,x,y,okl,ok2:integer;
  begin
   a :=100:
   x:=l0;
   y:=20;
   okl:=5:
   ok2:=0;
   if ((x>y) or ((y<>20) and (okl=0)) and (ok2<>0)) then
    a:=1
   else if ((okl<>0) and (ok2=、0)) then
      a:=-1
     else
      a:=0;
   writeln(a);
  end. 
输出:     
2.program Program2;
  var
  a,t:string;
  i,j:integer;
  begin
  a:=`morning`;
  j:= l;

   for i:=2 to 7 do
    if (a[j]<a[i])then
     j:= i;
   j:= j-1;
   for i:=1 to j do
    write (a[i]);
  end. 
输出:     
3.program Program3;
  Var
   a,b,c,d,sum:longint;
  begin
   read (a,b,c,d);
   a:=a mod 23:
   b:=b mod 28;
   c:=c mod 33;
   sum:=a*5544+b* 14421+c*1288-d;
   sum:=sum+21252;
   sum:=sum mod 21252;
   if (sum=0)then
    sum:=21252;
   writeln(sum);
  end. 
输入:283 102 23 320 输出:     
4.program program4;
  var
  a: array[0..5] of integer;
  sum,n,max,i,j,k:integer;
  cover:array[0..22000]of boolean;
  begin
   read (a[5],a[4],a[3],a[2],a[1],a[0]);
   if ((a[5]=0) and (a[3]=0) and (a[1]=0)) then
   begin
   a[5]:=a[4];a[4]:=a[2]; a[3]:=a[0]; a[2]:=0 a[0]:=0;
   end:
   for i:=0 to 5 do
   if (a[i]>10) then a[i]:=10+(a[i] mod 2);
   sum:=0:
   for i:=0 to 5 do sum:=sum+a[i]*(6-i);
   if ((sum mod 2) <>0) then  begin
                  writeln(`Can``t be divided.`);
                  Exit;
                End;
   sum:=sum div 2; max:=0; cover[0]:=True;
   for i:=1 to sum*2 do cover[i]:=False;
   for i:=0 to 5 do
   begin
    j:=0;
    while (j<a[i])do
     begin
      for k:=max downto 0 do
       begin if (cover[k]) then cover[k+6-i]:=True;end;
     max:=max+6-i: j:=j+1;
     end;
   end;
   if (cover[sum]) then writeln (`Can be divided.`)
           else writeln(`can``t be divided.`);
  end. 
输入:4 7 9 20 56 48 输入:1000 7 101 20 55 1 输入:2000 5 l 1 0 0
输出:        输出:          输出:         
四、完善程序(第l空2分,其余每空3分共28分) 
  1.一元二次方程 
  题目描述: 
    方程ax^2+bx+c=0,要求给出它的实数解. 
  输 入: 
    三个实数:a,b,c,是方程的三个系数(a≠0). 
  输 出: 
    如果无实数解,则输出"No solution";
    如果有两个相等的实数解,则输出其中一个,四舍五入到小数点后面3位;
    如果有两个不等的实数解,则解与解之间用逗号隔开,同样要四舍五入到小数点后3位。 
  输入样例: 
      l 2 1 
  输出样例: 
      -1.000 
  程 序: 
    program Program41;
    var
     a,b,c,m:real;
    begin
     read (a,b,c);
     m:=b*b -4*a*c;
     if ( ① )then
      begin
       write ( ② :0:3);
       write( ` , ` );
       write ((-1*b-sqrt(m))/(2*a):0: ③ );
      end
      else if ( ④ )then
       write( ⑤ )
       else begin
          write (`No solution`);
          end
    end. 
  2.翻硬币 
  题目描述: 
  一摞硬币共有m枚,每一枚都是正面朝上。取下最上面的一枚硬币,将它翻面后放回原处。然后取下最上面的2枚硬币,将他们一起翻面后再放回原处。再取3枚,取4枚……直至m枚。然后再从这摞硬币最上面的一枚开始,重复刚才的做法。这样一直做下去,直到这摞硬币中的每一枚又都是正面朝上为止。例如,m为1时,翻两次即可。m为2时,翻3次即可;m为3时,翻9次即可;m为4时,翻11次即可;m为5时,翻24次即可;…;m为30时,翻899次即可;… 
  输 入: 
  仅有的一个数字是这摞硬币的枚数m,0<m<1000。 
  输 出: 
  为了使这摞硬币中的每一枚又都是正面朝上所必需翻的次数。 
  输入样例: 
      30 
  输出样例: 
      899 
  程 序: 
    program Programl;
    var m:integer;
     function solve (m:integer):integer;
     vat i,t,d:integer;
       flag:boolean;
     begin
      if (m=1)then
       so1ve:= ① 
      else begin
         d:=2*m+1;
         t:= 2;
         i:= 1;
         flag:=False;
         repeat
          if (t=1)then
           begin
            solve:= ② 
            flag:=True;
           end
          else if ( ③ )then
              begin
               solve:=i*m-1;
               flag:=True;
              end
             else
              t:= ④ ;
          i:=i+1;
         until flag;
        end
      end;
    begin
     read (m);
     if ((m>0) and (m<1000)) then
      writeln ( ⑤ );
    end.

答案:
第九届分区普及组初赛参考答案

一、 选择一个正确答案代码(A/B/C/D/E),填入每题的括号内(每题1.5分,多选无分,共30分)
题号    1    2    3    4    5    6    7    8    9    10
选择    B    D    B    E    A    A    A    E    B    B
题号    11    12    13    14    15    16    17    18    19    20
选择    B    A    B    D    A    B    B    C    D    C

二.问题解答(每题5分,共10分) 
  1.答: 2.04
  2.答: 11 
三.阅读程序,并写出程序的正确运行结果: (每题8分,共32分) 
  (1)程序的运行结果是:-1
  (2)程序的运行结果是;mo
  (3)程序的运行结果是:8910
  (4)程序的运行结果是:Can't be divided  Can be divided  Can't be divided 
四.根据题意,将程序补充完整(第1空2分,其余每空3分 共28分) 
PASCAL语言
================= 
  题一
  ① m>0
  ② (-l*b+sqrt(m))/(2*a);
  ③ 3
  ④ ABS(M)<0.0001
  ⑤ -1*b/(2*a):0:3
  题二
  ① 2
  ② i*m
  ③ t=2*m
  ④ (t*2)mod d
  ⑤ solve(m) 

6 楼

2004的:
一、选择一个正确答案代码(A/B/C/D/E)填入每题的挂号内
1.美籍匈牙利数学家 冯&#8226;诺依曼 对计算机科学发展所做出的贡献是:( )
   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,可知有_____名儿童没有玩过其中任何一种。

7 楼

三、阅读程序(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

我来回复

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