NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx

上传人:b****6 文档编号:8318593 上传时间:2023-01-30 格式:DOCX 页数:12 大小:37.56KB
下载 相关 举报
NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx_第1页
第1页 / 共12页
NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx_第2页
第2页 / 共12页
NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx_第3页
第3页 / 共12页
NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx_第4页
第4页 / 共12页
NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx

《NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx》由会员分享,可在线阅读,更多相关《NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx(12页珍藏版)》请在冰豆网上搜索。

NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL.docx

NOIP第二十届全国青少年信息学奥林匹克联赛初赛试题及答案提高组试题及答案PASCAL

第二十届全国青少年信息学奥林匹克联赛初赛

提高组Pascal语言试题

竞赛时间:

2014年10月12日14:

30~16:

30

选手注意:

●试题纸共有10页,答题纸共有2页,满分100分。

请在答题纸上作答,写在试题纸上的一律无效。

●不得使用任何电子设备(如计算器、手机、电子词典等)或查阅任何书籍资料。

一、单项选择题(共15题,每题1.5分,共计22.5分;每题有且仅有一个正确选项)

1.以下哪个是面向对象的高级语言(  )。

A.汇编语言B.C++C.FORTRAND.Basic

2.1TB代表的字节数量是(  )。

A.2的10次方B.2的20次方C.2的30次方D.2的40次方

3.二进制数00100100和00010101的和是(  )。

A.00101000B.001010100C.01000101D.00111001

4.TCP协议属于哪一层协议(  )。

A.应用层B.传输层C.网络层D.数据链路层

5.下列几个32位IP地址中,书写错误的是(  ).

A.162.105.130.27B.192.168.0.1C.256.256.129.1D.10.0.0.1

6.在无向图中,所有顶点的度数之和是边数的(  )倍。

A.0.5B.1C.2D.4

7.对长度为n的有序单链表,若检索每个元素的概率相等,则顺序检索到表中任一元素的平均检索长度为(  )。

A.n/2B.(n+1)/2C.(n-1)/2D.n/4

 

8.编译器的主要功能是(  )。

A.将一种高级语言翻译成另一种高级语言

B.将源程序翻译成指令

C.将低级语言翻译成高级语言

D.将源程序重新组合

9.二进制数111.101所对应的十进制数是(  )。

A.5.625B.5.5C6.125D.7.625

10.若有变量vara:

integer;x,y:

real;,且a:

=7,x:

=2.5,y:

=4.7,则表达式x+amod3*trunc(x+y)mod2div4的值大约是(  )。

A.2.500000B.2.750000C.3.500000D.0.000000

11.有以下结构体说明和变量定义,如图所示,指针p、q、r分别指向一个链表中的三个连续结点。

type

ptr=^node;

node=record

data:

integer;

next:

ptr;

end;

var

p,q,r:

ptr;

现要将q和r所指结点的先后位置交换,同时要保持链表的连续,以下程序段中错误的是(  )。

A.q^.next:

=r^.next;p^.next:

=r;r^.next:

=q;

B.p^.next:

=r;q^.next:

=r^.next;r^.next:

=q;

C.q^.next:

=r^.next;r^.next:

=q;p^.next:

=r;

D.r^.next:

=q;q^.next:

=r^.next;p^.next:

=r;

12.同时查找2n个数中的最大值和最小值,最少比较次数为(  )。

A.3(n-2)/2B.4n-2C.3n-2D.2n-2

13.设G是有6个结点的完全图要得到一棵生成树,需要从G中删去(  )条边。

A.6B.9C.10D.15

14.以下时间复杂度不是O(n2)的排序方法是(  )。

A.插入排序B.归并排序C.冒泡排序D.选择排序

15.以下程序段实现了找第二小元素的算法。

输入是n个不等的数构成的数组S,输出S中第二小的数SecondMin。

在最坏情况下,该算法需要做(  )次比较。

ifS[1]

begin

FirstMin:

=S[1];

SecondMin:

=S[2];

end

else

begin

FirstMin:

=S[2];

SecondMin:

=S[1];

end;

fori:

=3tondO

ifS[i]

ifS[i]

begin

SecondMin:

=FirstMin;

FirstMin:

=S[i];

end

else

SecondMin:

=S[i];

A.2nB.n-1C.2n-3D.2n-2

二、不定项选择题(共5题,每题1.5分,共计7.5分;每题有一个或多个正确选项,多选或少选均不得分)

1.若逻辑变量A、C为真,B、D为假,以下逻辑运算表达式为真的有(  )。

A.(B∨C∨D)∨D∧AB.((┐A∧B)∨C)∧┐B

C.(A∧B)∨(C∧D)∨┐A)D.A∧(D∨┐C)∧B

2.下列(  )软件属于操作系统软件。

A.MicrosoftWord

B.WindowsXP

C.Android

D.MacOSX

E.Oracle

3.在NOI比赛中,对于程序设计题,选手提交的答案不得包含下列哪些内容(  )。

A.试图访问网络

B.打开或创建题目规定的输入/输出文件之外的其他文件

C.运行其他程序

D.改变文件系统的访问权限

E.读写文件系统的管理信息

4.以下哪些结构可以用来存储图(  )。

A.邻接矩阵B.栈C.邻接表D.二叉树

5.下列各无符号十进制整数中,能用八位二进制表示的数有(  )。

A.296B.133C.256D.199

三、问题求解(共2题,每题5分,共计10分;每题全部答对得5分,没有部分分)

1.由数字1,1,2,4,8,8所组成的不同的四位数的个数是________。

2.如图所示,图中每条边上的数字表示该边的长度,则从A到E的最短距离是________。

 

四、阅读程序写结果(共4题,每题8分,共计32分)

1.var

a,b,i,tot,c1,c2:

integer;

begin

readln(a,b);

tot:

=0;

fori:

=atobdo

begin

c1:

=idiv10;

c2:

=imod10;

if(c1+c2)mod3=0then

inc(tot);

end;

writeln(tot);

end.

输入:

731

输出:

________

2.var

n,m:

integer;

functionfun(n,minNum,maxNum:

integer):

integer;

vartot,i:

integer;

begin

ifn=0then

exit

(1);

tot:

=0;

fori:

=minNumtomaxNumdo

tot:

=tot+fun(n-1,i+1,maxNum);

exit(tot);

end;

begin

readln(n,m);

writeln(fun(m,1,n));

end.

输入:

63

输出:

________

3.const

SIZE=100;

var

dict:

array[1..SIZE]ofstring;

rank,ind:

array[1..SIZE]ofinteger;

i,j,n,tmp:

integer;

begin

readln(n);

fori:

=1tondo

begin

rank[i]:

=i;

ind[i]:

=i;

readln(dict[i]);

end;

fori:

=1ton-1do

forj:

=1ton-ido

ifdict[ind[j]]>dict[ind[j+1]]then

begin

tmp:

=ind[j];

ind[j]:

=ind[j+1];

ind[j+1]:

=tmp;

end;

fori:

=1tondo

rank[ind[i]]:

=i;

fori:

=1tondo

write(rank[i],'');

writeln;

end.

输入:

7

aaa

aba

bbb

aaa

aaa

ccc

aa

输出:

________

4.const

SIZE=100;

var

alive:

array[1..SIZE]ofinteger;

n,m,num,i,j:

integer;

functionnext(num:

integer):

integer;

begin

repeat

inc(num);

ifnum>nthen

num:

=1;

untilalive[num]<>0;

exit(num);

end;

begin

read(n,m);

fori:

=1tondo

alive[i]:

=1;

num:

=1;

fori:

=1tondo

begin

forj:

=1tom-1do

num:

=next(num);

write(num,'');

alive[num]:

=0;

ifi

num:

=next(num);

end;

writeln;

end.

输入:

113

输出:

________

五、完善程序(每题14分,共计28分)

1.(双栈模拟数组)只使用两个栈结构stack1和stack2,模拟对数组的随机读取。

作为栈结构,stack1和stack2只能访问栈顶(最后一个有效元素)。

栈顶指针top1和top2均指向栈顶元素的下一个位置。

输入第一行包含两个整数,分别是数组长度n和访问次数m,中间用单个空格隔开。

第二行包含n个整数,依次给出数组各项(数组下标从0到n-1)。

第三行包含m个整数,需要访问的数组F标。

对于每次访问,输出对应的数组元素。

(前两空每空2.5分,其余每空3分,共14分)

 

const

SIZE=100;

var

stack1,stack2:

array[0..SIZE]ofinteger;

top1,top2:

integer;

n,m,i,j:

integer;

procedureclearStack();

var

i:

integer;

begin

fori:

=top1toSIZEdo

stack1[i]:

=0;

fori:

=top2toSIZEdo

stack2[i]:

=0;

end;

begin

read(n,m);

fori:

=0ton-1do

read(stack1[i]);

top1:

=________;

top2:

=________;

forj:

=0tom-1do

begin

read(i);

while(i

begin

dec(top1);

________;

inc(top2);

end;

while(i>top1—1)do

begin

dec(top2);

________;

inc(top1);

end;

clearStack();

writeln(stack1[________]);

end;

end.

 

2.(最大子矩阵和)给出m行n列的整数矩阵,求最大的子矩阵和(子矩阵不能为空)。

输入第一行包含两个整数m和n,即矩阵的行数和列数。

之后m行,每行n个整数,描述整个矩阵。

程序最终输出最大的子矩阵和。

(第一空2分,其余3分,共14分)

const

SIZE=100;

var

matrix:

array[1..SIZE,1..SIZE]ofinteger;

rowsum:

array[1..SIZE,0..SIZE]ofinteger;

//rowsum[I,j]记录前i行前j个数的和

m,n,i,j,first,last,area,ans:

integer;

begin

read(m,n);

fori:

=1tomdo

forj:

=1tondo

read(matrix[i,j]);

ans:

=matrix________;

fori:

=1tomdo

________;

fori:

=1tomdo

forj:

=1tondo

rowsum[i,j]:

=________;

forfirst:

=1tondo

forlast:

=firsttondo

begin

________;

fori:

=1tomdo

begin

area:

=area+________;

if(area>ans)then

ans:

=area;

if(area<0)then

area:

=0;

end;

end;

writeln(ans);

end.

第二十届全国青少年信息学奥林匹克联赛初赛

提高组参考答案

一、单项选择题(共15题,每题1.5分,共计22.5分)

1

2

3

4

5

6

7

8

B

D

D

B

C

C

B

B

9

10

11

12

13

14

15

D

A

D

C

C

B

C

二、不定项选择题(共5题,每题1.5分,共计7.5分,多选或少选均不得分)

1

2

3

4

5

AB

BCD

ABCDE

AC

BD

三、问题求解(共2题,每题5分,共计10分)

1.1022.15

四、阅读程序写结果(共4题,每题8分,共计32分)

1.82.20

3.25634714.3691510411827

五、完善程序(第1题第2空3分,其余每空2.5分,共计28分)以下各程序填空可能还有一些等价的写法,各省赛区可请本省专家审定和上机验证,可以不上报CCFNOI科学委员会检查。

1

n

0

stack2[top2]:

=stack2[top1]

stack2[top1]:

=stack2[top2]

top1-1

2

[1,1]

rowsum[i,0]:

=0

rowsum[i,j-1]+matrix[i,j]

area:

=0

rowsum[i,last]-rowsum[i,first-1]

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1