小学组Pascal语言试题

  • 格式:doc
  • 大小:66.50 KB
  • 文档页数:18

下载文档原格式

  / 18
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

小学组Pascal语言试题(一)

一、单项选择。(每小题1.5分,共15分)

1.下面是某同学定义的变量名,合符Pascal语法的是()。

A.integer B. x1 B. 2x D. x*y

2.假定所有变量均为实型,算式的正确Pascal表达式是()。

A.(u+a)/((b-v)/(c-w)+u*d)

B. (u+a)/(b-v)/(c-w)+u*d

C. u+a/b-v/c-w+u*d

D. (u+a)/((b-v/c-w)+u*d)

3. 有如下的变量说明

var x,y,z:integer;

a:real;

则下面的赋值语句中正确的是()

A.x=y div 7; B. x:=y/z; C. a:=x*y; D. x+y:=z;

4. 设a,b,c,d均为整型变量,对于下面的程序段

a:=0;

b:=0;

readln(a,b);

read(c);

readln(d);

若从键盘输入:

1

2 3 4

5 6 7

其中,表示“回车”,则a,b,c,d中的数应为下面哪一组?()

A.1,2,3,4

B.1,2,3,5

C.1,2,5,6

D.1,0,3,5

5. 设n为整型变量,且n:=1997,下面能将n的十位数字(即右边第2位数字)分离出来的语句是()。

A. d:=n mod 100

B. d:=n div 100;

C. d:=n div 100 mod 10;

D. d:=n mod 100 div 10

6.“判断一个整数x是另一整数y的整数倍”的pascal表达式是()。

A.x=2*y B. x/y=2 C. x mod y=0 D. x mod y=1

7. Pascal表达式“2008 div 5 mod -2”的结果是:

A. 8

B. -1

C. 0

D. 1

8. 设实型变量pi已赋值为3.14159,下面不能输出3.14的语句是( )。

A. write(pi:0:2);

B. writeln(pi:1:2);

C. write(pi:2:2);

D. writeln(pi:2);

9.下列程序段的输出结果是()。

Var x,s:integer;

Begin

x:=2005;

s:=0;

while x<>0 do

begin

s:=s+x mod 10;

x:=x div 10;

end;

writeln(s);

end.

A. 0

B. 7

C. 10

D.2005

10.下列程序段执行后能打印两行“Very good!”的是( ):

A.

i:=0;

repeat

writeln(‘Very good’);

i:=i+2;

until i=4; B.

i:=0;

repeat

writeln(‘Very good’);

i:=i+2;

until i<4;

B.

i:=0;

repeat

writeln(‘Very good’);

i:=i+2;

until i>4; D.

i:=0;

repeat

writeln(‘Very good’);

i:=i+2;

until i=5;

二、问题求解。(7分)

A,B,C,D,E,F 6人参加了小学信息学竞赛,甲、乙、丙、丁四人猜测谁能获得一等奖。甲说:“冠军不是A就是B。”

乙说:“冠军绝不是C。”

丙说:“D,E,F都不可能是冠军。”

丁说:“冠军可能是D,E,F中的一个。”

比赛结果公布后发现,这4个人所说的话中,只有一个人的猜测是正确的。谁是第一名呢?________

三、写出程序的运行结果。(第1-4小题每题5分,第5小题每题8分,共28分)

1.

program xx1;

var a,b,c,d,sum : integer;

begin

readln(a,b,c,d);

a := a mod 23;

b := b mod 28;

c := c mo

d 33;

sum := a * 543 + b * 121 + c * 128 - d;

sum := sum + 2005;

sum := sum mod 2005;

if (sum <> 0 ) then sum := 2005;

writeln(sum);

end.

输入:283 102 23 320

输出____________

2.

program xx2;

var

s,i:ingeger;

begin

s:=0;

for i:=1 to 100 do

if (i mod 3=0)and (i mod 4=0) then s:=s+i; writeln('s=',s)

end.

3.

Var

a,b,c,d,e:integer;

begin

a:=79 ; b:=34; c:=57; d:=0 ; e:=1;

if (ac) then

d:=d+e

else

if (d+10

d:=e+10

else

d:=a-e;

writeln(d);

end.

输出:___________________

4.

program xx4;

var n,i,a1,a2,a3:integer;

begin

readln(n); a1:=1; a2:=1;

write(a1:8,a2:8);

for i:=3 to n do

begin

a3:=a1+a2;

a1:=a2;

a2:=a3;