西店中学计算机信息学竞赛测试卷(一)
班级:              姓名:              得分:           
一、基础题(13x2+4+4=34分)
1、与二进制数101.01011等值的十六进制数为(      )
A)A.B          B)5.51      C)A.51            D)5.58
2、下面四个不同进制的数,最小的一个数是(      )。               
  (A)(11011001)2   (B)(75)10  (C)(37)8   (D)(A7)16
3、运算式(2008)10-(3723)的结果是(          )。
  A、 (-1715)10   B、(5)10    C、 (-5)16  D、 (111)2  E、 (3263)8
4、(2004)10 + (32)16的结果是(        )。
A. (2036)10  B. (2054)16    C. (4006)10  D. (1)2   E. (2036)16
5、小张用十六进制、八进制和十进制写了如下一个等式:  52 - 19 = 33
   式中三个数是各不相同进位制的数,试问52、19、33,分别为(        )
  (A)八进制,十进制,十六进制       (B)十进制,十六进制,八进制
      (C)八进制,十六进制,十进制      (D)十进制,八进制,十六进制
6Pascal语言中,判断不等于0不等于的正确的条件表达式是(      ) 
A. not a=0 or not b=0       B. not((a=0)and(b=0))
C. not(a=0 and b=0)         D. (a<>0)and (b<>0)
7、表达式round(sqr(11/3))>sqr(11 div 3)的值是:(    )
    A、T        B、F    C、FALSE  D、TRUE
8下列中错误的PASCAL表达式是       
      A、10e6*3.7    B、17 DIV 3    C、18 DIV 3*4.0    D、4.018DIV3
、设a=6,b=3,c=42.15,d=-8,则表达式(a*trunc(c)-b) mod succ(d)的值为:(    )   
A、12      B、-4         C、7       D、4 
10、表达式sqrt(abs(-100)*sqr(round(4.2)))的值是:(      )
A、30   B、40  C、30.0    D、40.0
11、表达式(4 MOD(-3))与(-4 MOD 3)的值为:        。         
pascal语言难学吗
    (A)-1,-1    (B)1,-1  (C)-1,1  (D)1,1
12、下列IF语句中,ENDIF 表示相应IF的结束:                     
        y=0                               
          if  x<0                           
            then  Y=5                     
            else  if  x<10                 
                    then  y=10 
                   if x<100
                      then  y=100
                      endif 
                  else y=200
                  endif
          endif
    试指出:  当X=80 时,运行的结果是______;
              当X=5 时,运行结果为_________
   (A) Y=9  (B)  Y=5  (C) Y=10  (D) Y=100   (E)Y=200 
13、判别闰年的条件(年份能被4整除,并且不能被100整除;或者能被400整除的整数年份):                                                                     
14、任给自然数, 1≤K≤9 ,按如下计算步骤求序列XJXJ-1……X0的步骤:{8%}
(1)j=0
(2)如果N>=K 则转第3步,否则转第7步   
(3)Xj = N  MOD K                {div表示整数除法,结果取整数;
(4)N =N DIV K                        mod表示整除取余数}
(5)j=j+1                               
(6)回第2步
(7)j = N                               
(8)结束
试求当: N=1998, K=3时,XJXJ-1……X 之值为                       
二、问题求解(5+5+5+7=22分)
15、已知:1到10中有两个数1、7不能被2,3,5整除,那么1到1000中有多少个数不能被2,3,5 整除?
16、某班有50名学生,每位学生发一张调查卡,上写abc三本书的书名,将读过的书打,结果统计数字如下: 只读者8人;只读者4人;只读c者3人;全部读过的有2人;读过ab两本书的有4人;读过ac两本书的有2人;读过,c两本书的有3人;
(1)读过a的人数是                  
(2)一本书也没有读过的人数是              
17、根据Nocomachns定理,任何一个正整数n的立方一定可以表示成n个连续的奇数的和。
    例如:
    13= 1
    23= 3+ 5
    33= 7+ 9 +11
    43=  13+15+17+19
    在这里,若将每一个式中的最小奇数称为X,那么当给出n之后,请写出X与n之间的关系表达式:                                           
18、一百个人排成一队,从头到尾报数,报奇数者出列,剩下的人再从头到尾报数,报奇数者仍然出列。试问这样下去留在队列中的那个人,第一次报数时是多少号?并用最简洁的语言表达你求解的思路。
那人的第一次报数号是:_________ 
分析过程:(用简单的语言描述分析过程)
三、程序阅读,写出程序运行结果(24分,每题6分)
19、 program ex19;
var a,b,n:longint;
begin
  readln(n);  a:=0;b:=0;
  repeat
    a:=a+1;b:=b+a;
  until b>=n;
  writeln(a);
end.
输入:20100 输出           
20、 Program ex20(input,output);
Var   a,n,s:integer
begin
a:=1;n:=2;s:=0;
while s<10 do
begin
 a:=a*n; s:=s+a;
end;
writeln(s:5,a:5,n:5);
end.
输出结果为:           
21、 Program ex21;
Var
i:integer;
a:array[1..20] of integer;
begin
a[1]:=1;
a[2]:=2;
for i:=3 to 20 do
  a[i]:=a[i-2]*a[i-1];
write(a[6]/a[5]);
end.
输出结果为:           
22、 program ex22;
VAR  X,Y1,Y2,Y3:INTEGER;
 BEGIN
  READLN(X);Y1:=0;Y2:=1;Y3:=1;
  WHILE Y2<=X DO
   BEGIN
    Y1:=Y1+1; 
Y3:=Y3+2; 
Y2:=Y2+Y3;
    END;
  WRITELN(Y1);
  END.
输入:23420  输出结果为:           
四、完善程序(45分,每空3分)
23、读入10个数,计算它们的和、积、平均值。
Program b2(input,output);
      Var
        x,s,m,a:real;
        i:integer;
      Begin 
        s:=0;
            (1)   
        For i:=1 to 10 do
          begin
              read(x);
              s:=  (2)  ;
              m:=  (3) 
           end; { For }
        a:=   (4)  ;
        writeln(sum=,s,mul=,m,ave=,a );
      End.
24、 计算两个正整数m和n的最大公约数,请将下列程序补充完整。
rogram eb4 (input,output);
Var
m,n,r:integer;
begin
write(input m,n=);
readln(  (1)  );
repeat
  r:=  (2)     ;
  m:=n;
n:=r;
until      (3)   
writeln(The greatest common divide is,m);
end.
25、输入50个正整数,把这十个数按由小到大的顺序排列,并以每行5个输出。
program ex5_2;
   var
a:array[1..10]of integer;ﻫ    i,j,t:integer;ﻫ   beginﻫ     writeln('Input 10 integers:');
     for i:=1 to 10 do read(a[i]); ﻫ     readln;
     for i:=1 to 9 do
      beginﻫ      for j:=     (1)    to 10 do
        if    (2)    then ﻫ          beginﻫ          t:=a[i];
  (3)  ;
a[j]:=t;
          end;
       end;ﻫ      for i:=1 to 10 do
      begin
        write(a[i]:5);
if    (4)    then writeln;
end;
end.
26、问题描述:用筛选法求100以内的素数(质数)
Program lx53
Var
a:array [ 1..100 ] of  integer ;
 i,j,k:integer;
begin
for i:=1 to 100 do
  a[i]:=iI;
a[1]:=0;
i:=2;
while i<=100 do
begin
 k:=i;
 while    (1)  do
  begin
       (2) 
a[k]:=0;
    end;
  inc(i);
   while a[i]=0 do    (3) 
  end
for i:=1 to 100 do
 if    (4)    then write(a[ i ] ,  );
end.
西店中学计算机信息学竞赛测试答题卷