南海信息竞赛初赛初中组试题.docx
《南海信息竞赛初赛初中组试题.docx》由会员分享,可在线阅读,更多相关《南海信息竞赛初赛初中组试题.docx(9页珍藏版)》请在冰点文库上搜索。
南海信息竞赛初赛初中组试题
2005年南海信息竞赛初赛初中组试题
作者:
区教研室文章来源:
区教研室点击数:
429更新时间:
2005-9-3011:
00:
42
一、单项选择题:
(共20小题,每题1.5分,共计30分)
1、在“资源管理器”中,“剪切”一个文件后,该文件被( )
A、删除 B、放到回放站中 C、临时存放在桌面上
D、临时存放在内存中 E、临时存放在硬盘上
2、计算机网络最突出的优点是( )
A、计算精度高 B、内存容量大 C、运算速度快
D、连网的计算机能够相互共享资源 E、降低了计算机的制造成本
3、WWW是指( )
A、WorldWideWed B、WideWorldWdb C、WebWorldWide
D、WebWideWorld E、WorldWideWeb
4、下列说法正确的是( )
A、CPU的主频越高,其运算速度越快
B、存储器具有记忆能力,其中信息任何时候都不会丢失
C、点阵打印机的针数越多,则能打印的汉字字体就越多
D、两个显示器屏幕尺寸相同,则它们的分辨率必定相同
E、个人用户只能使用拨号上网的方式连接到Internet
5、有一个数值2341,它与十六进制数4E1相等,那么该数值是( )
A、五进制数 B、六进制数 C、七进制数 D、八进制数 E、九进制
6、表达式a*(c-b)+d的后缀表达式是( )
A、acbd*-+ B、abc-*d+ C、bc-a*d+ D、+-*abcd E、acb-*d+
7、在一个具有N个顶点的无向图中,要连通全部的顶点至少需要边的数目是( )
A、N B、N+1 C、N-1 D、N*(N-1)/2 E、N*(N-1)
8、冯诺依曼式计算机的思想是( )A、指令控制 B、数据存储 C、程序控制 D、存储程序和程序控制 E、存储指令
9、二进制数00100100和00010100的和是( )A、00101000 B、001010100 C、10001000 D、01000100 E、0011100010、一个队列开始为空,数列1,2,3,……按顺序进队,经过操作序列“进,进,出,进,进,出,进,进,进,出,进,出”后,队列中的第2个元素是( )A、2 B、3 C、4 D、5 E、611、计算机病毒的特点是( )。
A、传播性、潜伏性、易读性与隐蔽性 B、破坏性、传播性、潜伏性与安全性
C、传播性、潜伏性、破坏性与激发性 D、传播性、潜伏性、破坏性与易读性
E、传播性、危害性、易读性与隐蔽性
12、下列存储容量计量的表示中,正确的是( )。
A、1MB=1024TB B、1MB=1000KB C、1MB=1024GB
D、1MB=1024B E、1MB=1024KB
13、Linux是一种( )。
A、应用软件 B、数据库管理系统 C、操作系统
D、办公自动化软件 E、计算机病毒
14、由1个x,2个y和3个z构成的所有字符串中,包含子串“xyz”的共有()个A、20 B、8 C、16 D、12 E、24
15、表达式28div4mod3*trunc(3.675)的值是( )。
A、7 B、4 C、3 D、2 E、1
16、所谓的“中断”是指( )。
A、操作系统随意停止一个程序的运行
B、系统发现一个或多个事件时,中止当前程序的运行
C、因停机而停止一个程序的运行
D、程序运行结束
E、电脑死机
17、设无向图的顶点个数为n,则该无向图最多有( )条边。
A、n-1 B、n(n-1)/2 C、n(n+1)/2 D、n(n-1) E、n*n
18、存储400个24*24点阵汉字的字模所需的存储容量为( )。
A、255kb B、75kb C、 37.5kb D、28.125kb E、72kb
19、某二叉树的中序为ABCDEFG,后序为BDCAFGE,那么该二叉树的前序是( )。
A、EGFACBD B、EACBDGF C、EAGCFBD D、EABDCFG E、以上答案都不对
20、借助于栈结构由输入序列123456得到的输出序列中不可能出现的情形( )。
A、142356 B、123654 C、231456 D、213546 E、654321
二、问题求解:
(共2题,每题5分,共计10分)
1、马路上有编号为1,2,3,……,10的十盏路灯,为既节约用电,又能看清路面(不影响走路照明),可以把其中的三只灯关掉,但不能同时关掉相邻的两盏或两盏以上的灯。
在两端的灯也不能关掉的情况下,求满足条件的关灯办法有________________种?
2、无向图G有16条边,有3个4度顶点、4个3度顶点,其余顶点的度均小于3,则G至少有_________个顶点。
三、读程序写结果:
(共4题,每题8分,共计32分)
1、programp42;
var
x,p,i,s:
integer;
begin
s:
=0;
forx:
=1to5dobegin
p:
=1;
fori:
=1toxdo
p:
=p*x;
s:
=s+p;
end;
writeln(s);
end.
输出:
2、programp42;
functionfax(x,y:
integer):
integer;
begin
ifx=0thenfax:
=y+1
elseify=0thenfax:
=fax(x-1,1)
elsefax:
=fax(x-1,fax(x,y-1));
end;
begin
writeln(fax(3,5));
end.
输出:
3、programp43;
var
a,x,y,z:
integer;
procedurep(x,y:
integer;varz:
integer);
begin
z:
=y-x-z;
writeln(x,'',y,'',z);
end;
functionq(m:
integer):
integer;
begin
z:
=z+m;
q:
=succ(m);
end;
begin
x:
=4;y:
=6;z:
=3;
p(5,x+y+z,x);
writeln(x,'',y,'',z);
a:
=q
(2);
a:
=a*q(z);
writeln(a,'',z);
end.
输出:
4、programp44;
var
ch:
char;flag:
boolean;
begin
flag:
=true;
repeat
read(ch);
ifch=''thenflag:
=true
elseifflagand(ch>='a')and(ch<='z')then
begin
ch:
=chr(ord(ch)+ord('A')-ord('a'));
flag:
=false;
end
elseflag:
=false;
write(ch);
untilch='.'
end.
输入:
thisisaexample.
输出:
四、完善程序:
(共2题,前6空,每空3分,后5空,每空2分,共计28分)1、多项式加法:
下面的程序是进行多项式相加,多项式的系数和指数存放在数组中(输入数据中没有系数为0的项,输入数据中多项式的指数是按从小到大的顺序排列)。
programp51;
var
a,b:
array[1..20,1..2]ofinteger;
c:
array[1..40,1..2]ofinteger;
l1,l2,l3,i,j,k:
integer;
begin
l1:
=0;l2:
=0;l3:
=0;
repeat
inc(l1);
read(a[l1,1],a[l1,2]);
untileoln;
writeln;
repeat
inc(l2);
read(b[l2,1],b[l2,2]);
untileoln;
writeln;
i:
=1;j:
=1;
while① dobegin
if ② then
begin
inc(l3);
③
c[l3,2]:
=b[j,2];
④
inc(j);
continue;
end;
ifa[i,2]
inc(l3);
c[l3,1]:
=a[i,1];
c[l3,2]:
=a[i,2];
inc(i);
end
elsebegin
inc(l3);
c[l3,1]:
=b[j,1];
c[l3,2]:
=b[j,2];
inc(j);
end;
end;
fork:
=⑤ dobegin
inc(l3);
c[l3,1]:
=a[k,1];
c[l3,2]:
=a[k,2];
end;
fork:
=⑥ dobegin
inc(l3);
c[l3,1]:
=b[k,1];
c[l3,2]:
=b[k,2];
end;
ifl3=0thenbegin
writeln(0);
exit;
end;
fork:
=1tol3do
write(c[k,1],'',c[k,2],'');
writeln;
end.
2、分糖果:
N(N<20)个孩子围成一圈分糖果。
老师先随机地发给每个孩子若干颗糖果,然后按以下规则调整:
每个孩子同时将自己手中的糖果分一半给坐在他右边的小朋友。
若平分前,某个孩子手中的糖果为奇数颗,则必须从老师那里要一颗,使他的糖果数变成偶数。
小孩人数和初始糖果数由键盘输入。
下面的程序可求出经过多少次上述这样的调整,使每个孩子手中的糖果一样多,调整结束时每个孩子有糖果多少颗,在调整过程中老师又新增发了多少颗糖果。
programp52;
typearr=array[0..20]ofinteger;
var
a,b:
arr;
i,n,addk,loopc:
integer;
functionallok(a:
arr):
boolean;
var
i:
integer;
begin
fori:
=1ton-1do
ifa[0]<>a[i]thenbegin
allok:
=false;
①
end;
allok:
=true;
end;
begin
readln(n);
fori:
=0ton-1doread(a[i]);
addk:
=0;loopc:
=0;
while② dobegin
loopc:
=loopc+1;
fori:
=0ton-1dobegin
ifa[i]mod2=1then
begin
a[i]:
=a[i]+1;
③
end;
ifi=a[i]div2else④
a[i]:
=a[i]div2;
end;
fori:
=0ton-1do⑤ ;
end;
writeln(loopc);
writeln(a[0]);
writeln(addk);
end.