本帖最后由 蜜葡萄 于 2014-10-16 11:23 编辑
2014年鄞州区小学生编程竞赛
9.25 | 区,初赛 | 初赛试卷 | 入围决赛名单
10.15 | 区,决赛 | 决赛试卷 | 考试现场 | 获奖名单
>>>2015小升初必备:宁波小升初杯赛大起底(比赛时间,真题、杯赛内幕..)
鄞州区小学生计算机程序设计竞赛(2014)
(两小时完成)
◆◆请将正确答案在答题卷上填写,在本试题卷上答题无效◆◆
一、选择题(2*7)
1、下列表达式的值为FALSE的是( )。
A. Not(‘90’
C. Odd(True(98.49)) D.Ord(Chr(Pred(8)))>=7
2、判断变量ch的值是否为大写字母,下列表达式正确的是( )。
A. ch>=’A’ and ch<=’Z’ B.’A’<=ch<=’Z’
C.(ch>=A)and(ch<=Z) D. not(ch’Z’)
3、表达式Chr(Ord(‘a’)+5))的值是( )。
A.’f’ B.‘E’ C.102 D.101
4、与十进制数2014等值的二进制数是( )。
A.11111011110 B.11110011110
C.10111111110 D.11111111010
5、[x]补码=10011101,其原码为( )。
A.11001111 B.11100100 C.11100011 D.01100101
6、十进算术表达式:5*512+7*64+4*8+7的运算结果,用二进制表示为( )。
A. 101111100111 B.111111100101
C. 111110100101 D.111111011011
7、(2014)16 + (924)10的结果是( )。
A. (9036)10 B. (23B0)16
C. (9130)10 D. (100011000110)2
二、计算下列函数(1*15)
1、Sqr(7)的值为( )。
2、Round(19.6)的值为( )。
3、Round(14.4)的值为( )。
4、int(-5.7)的值为( )。
5、Abs(-4.1)的值为( )。
6、-37 mod 6的值为( )。
7、’A’
8、odd(25)的值( )。
9、Not(17-5>13)的值为( )。
10、(11>10)and(7>=7)的值为( )。
11、Round(-11.1)的值为( )。
12、Round(-9.7)的值为( )。
13、Trunc(-17.7)的值为( )
14、chr(ord(‘h ’))的值为( )。
15、已知chr(97)的值为字母a则chr(99)的值为字母( )。
三、问题求解(5+6)
1、兄弟两人去钓鱼,一共钓了23条,哥哥钓的鱼比弟弟的三倍还多3条,哥哥弟弟各钓了多少条?
哥哥___________________ 弟弟______________________
2、对一批编号为1~100,全部开关朝上(开)的灯进行以下操作:凡是1的倍数反方向拨一次开关;2的倍数反方向又拨一次开关;3的倍数反方向又拨一次开关;……100的倍数反方向又拨一次开关。问:最后为关熄状态的灯的编号有哪些?
______________________________________________________
四、看程序写结果1、var d, p: integer;begin p:=1; d:=5; while d>1 do begin p:=2*(p+1); d:=d-1 end; writeln (p)end.
输出:__________________
2、
var x,y:longint;
begin
x:=2014; y:=924;
while (x<>0) and (y<>0) do
begin
if x>=y then x:=x-y else y:=y-x
end;
if x=0 then writeln(y) else writeln(x)
end.
输出:_________________________
3、
var i,j,n:integer;
b:array[1..10] of 0..2;
begin
n:=2014;j:=0;
while n>0 do begin
j:=j+1;b[j]:=n mod 3; n:=n div 3;
end;
for i:=j downto 1 do write(b);
writeln;
end.
输出:
4、
var i,j,s:integer;
b :array[0..5] of integer;
begin
s:=1;
for i:=1 to 5 do b:=i;
j:=1;
while j>0 do
begin
j:=5;
while (j>0) and (b[j]=10+j-5) do j:=j-1;
if j>0 then
begin
s:=s+1; b[j]:=b[j]+1;
for i:=j+1 to 5 do b:=b[j]+i-j
end;
end;
writeln('s=',s);
end.
输出:______________________________
5、
var i,k:integer;
a:array [0..20] of integer;
begin
a[1]:=1;
a[2]:=1;
k:=1;
repeat
a[k+2]:=1;
for i:=k+1 downto 2 do a:=a+a[i-1];
k:=k+1;
until k>=5;
for i:=1 to 6 do write(a:5);
writeln
end.
输出:________________________________
五、完善程序(3*4)
1、鸡兔同笼问题:
鸡有一头二脚,兔有一头四脚;鸡兔同笼共有头m个、脚n个,问笼中鸡、兔各有多少?例如输入:4 10
输出:
3
1
var n,m:Qword;
begin
readln(m,n);
writeln(①);
writeln(②);
end.
2、最小公倍数
求两个正整数m、n的最小公倍数k。例如输入:12 9 输出:36
var a,b,t:Qword;
function gcd(m,n:Qword):Qword;
begin
if m mod n=0 then gcd:=n else gcd:= ③;
end;
begin
readln(a,b);if a
end.
3、汉诺塔问题
将A柱上的圆盘移到C柱。移动规则如下: 1、一次只能移动一个盘; 2、不允许把大盘放在小盘上。 第一行只有一个正整数:k,表示总移动次数
接下来的k行,每行是一种移动方法。例如输入3
输出
7
A->C
A->B
C->B
A->C
B->A
B->C
A->C
var
k,n,i:longint;
procedure try(a,b,c:char;m:longint);
begin
if m=1 then writeln(⑤ )
else
begin
try(⑥);
writeln(a,'->',c);
try(⑦);
end;
end;
begin
readln(n);
k:=1;
for i:=1 to n do
⑧ ;
writeln(⑨);
try(⑩);
end.
2014-10-9 14:14 上传
点击文件名下载附件
2014-10-9 14:14 上传
点击文件名下载附件
2014-10-9 14:14 上传
点击文件名下载附件