2014年宁波市第29届中小学生计算机程序设计竞赛小学组初赛试题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2014年宁波市第29届中小学生计算机程序设计竞赛小学组初赛试题
一、选择题(每题有且仅有一个正确答案,选对得1.5分,选错、不选或多选均失分)
1.存放一个ASCII码需要的字节数为
(A)1字节(B)2字节(C)0.5字节(D)4字节
2.下列软件中不属于操作系统的是
(A)win7(B)linux(C)winxp(D)winrar
3.下列数中最小的是
(A)(7)8(B)(11)7(C)(15)10(D)(11)5
4.世界上第一台电子计算机诞生于
(A)1949(B)1849(C)1946(D)1893
5.在下面各奖项中,为计算机科学与技术领域作出杰出贡献的科学家设立的奖项是(A)沃尔夫奖(B)诺贝尔奖(C)菲尔兹奖(D)图灵奖
6.操作系统的文件夹采用的层次结构为
(A)网状(B)链状(C)树状(D)块状
7.在pascal语言中,pos(‘a’,’bbccc’)的返回值为
(A)0(B)-1(C)5(D)’a’
8.在pascal语言中,下列语句属于正确的赋值语句的是
(A)s:=1(B)s=a+1(C)a+1=s(D)a+1:=s
9.计算圆周长的算法描述如下:
①输入圆半径r;
②计算圆周长a(计算公式为a=2πr);
③输出结果;
④结束。
该算法属于
(A)枚举算法(B)递归算法(C)排序算法(D)以上都不是
10.现有一个数列A为1,2,3,另一个数列B为3,2,1,若采用选择排序分别的两个数列实现从小到大排序,则两个数列需要的比较次数为
(A)A比B多(B)A和B一样多(C)B比A多(D)不一定
11.在下述程序段中,判断语句a<>100被执行的次数为
a:=99
while a<>100do
a:=a+1;
(A)0(B)1(C)2(D)3
12.下面关于堆栈和队列的说法中错误的是
(A)队列是一种先进先出的线性表
(B)堆栈可以选择栈的任意位置进行弹出操作
(C)堆栈只能选择栈顶进行压入操作
(D)堆栈是一种先进后出的线性表
13.下列说法中不属于计算机病毒特点的是
(A)破坏性(B)传染性(C)潜伏性(D)抗药性
14.程序设计的三种基本结构是
(A)主程序、函数、过程(B)顺序、选择、循环
(C)变量、常量、不定量(D)数组、字符串、浮点型
15.下列内容中属于信息的是
(A)报纸(B)黑板(C)课本(D)黑板上的放假通知
16.在pascal语言中,记录类型用到的保留字为
(A)record(B)struct(C)baidu(D)then
17.某班有30个同学报名参加100、400、800m3个运动项目比赛。已知有6人获100m
参赛资格,8人获400m参赛资格,18人获800m参赛资格。且其中有1人获全部3项参赛资格,则至少有()人没有获任何项目参赛资格。
(A)0(B)1(C)2(D)3
18.下列pascal语言的函数中,返回值不是数值类型的是
(A)pos(B)copy(C)length(D)abs
19.下列判断语句中,不能判断x为奇数的是
(A)odd(x)=true(B)odd(x)<>false
(C)x and1<>x(D)(x shr1)shl1<>x
20.小李在递归函数内部定义了一个长度为100的longint数组,但是编译运行却频频报错,请问最有可能的原因是
(A)代码风格不够优美(B)程序效率太低导致超时
(C)显示器亮度不够(D)递归层次过多导致栈空间不足
二.问题求解(每小题5分,共10分)
1.在1到100的100个整数中,能被3整除且不能被4整除的数一共有个。
2.定义2个1000*1000的二维长整型数组需要的存储空间为MB。(保留1位小数)
三、阅读程序写结果(每题8分,共32分)
1.
Var x:longint;
flag:boolean;
begin
read(x);
flag:=false;
if(x mod4=0)and(x mod100<>0)then flag:=true;
if x mod400=0then flag:=true;
if flag then writeln(‘leap year!’)
else writeln(‘not a leap year!’);
end.
输入:1234
输出:
2.
Var f:array[1..100,1..100]of longint;
cnt:longint;
i,j,n,t,x,y,ans:longint; begin
read(n);
x:=1;
y:=0;
for i:=1to n do
begin
for j:=1to n*2-i+1do
begin
inc(y);
inc(cnt);
f[x,y]:=cnt;
end;
for j:=1to n*2-i do
begin
inc(x);
inc(cnt);
f[x,y]:=cnt;
end;
for j:=1to n*2-i do
begin
dec(y);
dec(cnt);
f[x,y]:=cnt;
end;
for j:=1to n*2-i-1do
begin
dec(x);
dec(cnt);
f[x,y]:=cnt;
end;
end;
read(t);
ans:=0;
for i:=1to n*2do
ans:=ans+f[t,i];
writeln(ans);
end.
输入:32
输出:
3.