2011年海淀区信息学奥林匹克竞赛 小学组笔试试题:(共40分)
姓名_________年级________学校_________ 准考号_________成绩_____
一. 选择题(10分,每小题2分)
1、语句A=A+1的正确含义是( ).
A)将变量A的值存入到A+1中去 B)将变量A的值+1后再赋给变量A C)将变量A+1的值存入变量A中去 D)变量A的值等于变量A+1的值
4、在QBASIC中,数327698表示的数的类型是 ( ).
(A)integer型 (B)single型
(C) long型 (D)double型
5、产生一个50~100之间(包括50和100)的随机整数范围为( ). (A)FIX(50+50*RND) (B)FIX(50+51*RND) (C) FIX(51+50*RND) (D)FIX(51+49*RND)
2、字符“e”的ASCII码值是:( ).
A) 69 B) 70 C) 101 D) 102
3、下面字符串关系式的值为“真”的是:( ).
A) “CAT”>“DOG” B) “abc”>“ABC” C) “MAN”>“MEN” D) “IM”<“IN”
二、读程序写运行结果(每小题5分,共20分)
1、
CLS 运行结果为: X = 2 Y = 3
FOR I = X TO X + Y
PRINT I X = X + 2 NEXT I
PRINT \END
1
2、
CLS 运行结果为: S = 0 DO
READ X
IF X / 4 = FIX(X / 4) OR X / 5 = FIX(X / 5) THEN S = S + X END IF
LOOP WHILE X <> 0 PRINT S
DATA 2,5,6,8,18,21,0 END
3、
CLS DIM A(8) A(1) = 2
FOR P = 2 TO 8
A(P) = A(P - 1) + P * 2
NEXT P
FOR X = 1 TO 8 STEP 3 PRINT A(X) NEXT X END
4、
CLS A$ = \B$ = MID$(A$, 2, 2) C$ = RIGHT$(A$, 2)
V = VAL(A$) + VAL(B$) + VAL(C$) PRINT V END
运行结果为: 运行结果为: 2
三.根据题意将程序补充完整(每空1分,共10分)
有N个猴子围成一圈,每个猴子有一个编号,编号从1到N(其中1≤N≤40)。现打算从中选出一个猴子大王。经过协商,决定选大王的规则如下:从第一个开始,每数到3的猴子出圈,最后剩下来的就是猴子中的大王。
(备注:变量B代表报数;变量T代表出圈的猴子数;数组A用来存放每个猴子在圈内或圈外的状态,在圈中时,猴子所处的状态为0,出圈时猴子所处的状态为1。) 程序为: CLS
DIM N AS INTEGER, B AS INTEGER, I AS INTEGER, T AS INTEGER INPUT N
DIM A(1 TO N) AS INTEGER IF _________AND _________ THEN B = 0
FOR I = 1 TO N ___________ NEXT I T = 0
DO WHILE T < _________ FOR I = 1 TO N
IF A(I) = 0 THEN B = __________ IF B = _____ THEN __________ __________ __________ END IF NEXT I LOOP
FOR I = 1 TO N
IF ________ THEN PRINT I NEXT I END IF END
3
2011年海淀区中小学生信息学奥林匹克竞赛
小学组上机试题:(共72分)
姓名____________年级______学校_________准考号________成绩__________
说明:(1)在D:\\下,用自己的准考号建立一个文件夹,如某考生的考号是X8,则建立的文
件夹为D:\\X8。
(2)在这个文件夹内,分别用每个题目的题目名称分别建立一个子文件夹,用于存放
该题目的程序。这些子文件夹的名字分别是:tuxing、shulie、pfang、sushu、zfc、yongpin。
(3)将最后写好的程序,存入相应的题目文件夹中
如:第一题的题目名称是tuxing,则将tuxing.bas文件名存入D:\\X8\\tuxing子文
件夹中。
(4)凡是题目中所涉及的条件都要进行判断。
一、 打印图形(题目名称: tuxing.bas) (12分)
【题目描述】 由键盘输入任意一个自然数N,输出如下图规律的图形。 【输入文件】 文件名为:tuxing.in
文件中只有一个整数N,为图形的行数(其中2<=N<=26) 【输出文件】 文件名为:tuxing.out 文件中为输出的图形。
【要求】 图形的最左侧从第一列开始输出,字符之间无空格。 【样例输入】 tuxing.in中有:
4
【样例输出】 tuxing.out中有下图所示的图形 。
D DCD DCBCD DCBABCD DCBCD DCD D
二、 数列计算(题目名称: shulie.bas) (12分)
【题目描述】 有一个分数序列是:1/2,2/3,3/5,5/8,8/13,13/21.. ...,请同学们认真观
察好分子和分母的规律。现要求:指定项数为任意的N项, 1) 计算并输出前N项; 2) 计算并输出前N项的和;
3) 将这组数据按从大到小的顺序进行排列输出。
【题目名称】 shulie.bas
【输入文件】 文件名:shulie.in
文件中只有一行,包含1个整数N(其中2≤N≤20)为这个分数序列的项数。
【输出文件】 文件名:shulie.out
文件中共有三行:
4
第一行为这个分数序列各项的数值,数值之间空3格; 第二行为这个分数序列前N项的数据和;
第三行为将这组数据按从大到小的顺序进行排列输出,数值之间空3格。【要
求】 每一行的输出数据都从第一列开始输出。 【样例输入】 shulie.in的内容为:
6
【样例输出】 shulie.out的内容为:
.5 .6666667 .6 .625 .6153846 .6190476
3.626099
.6666667 .625 .6190476 .6153846 .6 .5
三、求完全平方数(题目名称:pfang.bas) (12分)
【题目描述】: 一个数如果是另一个整数的完全平方,那么我们就称这个数为完全平方数。
如25,36,49,??121,144,225,361,400,441,484,??961等。现要求在三位整数中找出具有这样一些特点的数: (1) 它们是完全平方数;
(2) 三位数字中有两位数字相同。 例如144、225、400、676等。
求出任意自然数M ~N之间所有满足上述条件的数,并统计这样的数的个数。
【输入文件】 文件名:pfang.in
文件中只有一行,包含两个用空格隔开的任意自然数M和N (其中100<=M 【输出文件】 文件名:pfang.out 文件中共有若干行: 前若干行每行一个整数是任意自然数M~N之间所有满足条件的平方数; 最后一行是统计这些平方数的个数。 【要求】 每一行的数据都从第一列开始输出。 【输入样例】:pfang.in的内容为: 100 300(两个数据之间空一格) 【输出样例】:pfang.out的内容为: 100 121 144 225 4 四 、求素数(题目名称:sushu.bas) (12分) 【题目描述】:在三位自然数中有这样一些特点的数: (1) 它们是素数; (2) 它们中满足:任意两个素数的和小于1000,同时又是17的倍数。 如:227和283,229和281,233和277等等。 5