noip初赛练习.docx

上传人:b****7 文档编号:9122114 上传时间:2023-02-03 格式:DOCX 页数:19 大小:26.41KB
下载 相关 举报
noip初赛练习.docx_第1页
第1页 / 共19页
noip初赛练习.docx_第2页
第2页 / 共19页
noip初赛练习.docx_第3页
第3页 / 共19页
noip初赛练习.docx_第4页
第4页 / 共19页
noip初赛练习.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

noip初赛练习.docx

《noip初赛练习.docx》由会员分享,可在线阅读,更多相关《noip初赛练习.docx(19页珍藏版)》请在冰豆网上搜索。

noip初赛练习.docx

noip初赛练习

初赛练习

选择题

1、一个向量第一个元素的存储地址是100,每个元素的长度是2,则第5个元素的地址是(B)

A)110B)108C)100D)109

2、设有一个含有13个元素的Hash表(O~12),Hash函数是:

H(key)=key%13,其中%是求余数运算。

用线性探查法解决冲突,则对于序列(2、8、31、20、19、18、53、27),18应放在第几号格中(B)。

B)A)5B)9C)4D)0

3、按照二叉数的定义,具有3个结点的二叉树有(C)种。

A)3B)4C)5D)6

4、在一个有向图中,所有顶点的入度之和等于所有顶点的出度之和的(B)倍。

A)1/2B)1C)2D)4

5、设栈S和队列Q初始状态为空,元素e1,e2,e3,e4,e5,e6依次通过栈S,一个元素出栈后即进入队列Q,若出队的顺序为e2,e4,e3,e6,e5,e1,则栈S的容量至少应该为(B)。

B)A)2B)3C)4D)5

6、知一个栈的入栈顺序是1,2,3,…,n,其输出序列为P1,P2,P3,…,Pn,若P1是n,则Pi是(C)。

C)A)iB)n-1C)n-i+1D)不确定

7、二叉树的高度为h,所有结点的度为0或2,则此树最少有(B)个结点。

A)2h-1B)2h-1C)2h+1D)h+1

8、(0.5)10=(C)16。

A)0.1B)0.75C)0.8D)0.25

9、已知x=(0.1011010)2,则[x/2]补=(C)2。

A)0.1011101B)11110110C)0.0101101D)0.100110

10、与二进制数101.01011等值的十六进制数为(D)。

A)A.BB)5.51C)A.51D)5.58

11、微型计算机的问世是由于(C)的出现。

A)中小规模集成电路B)晶体管电路C)(超)大规模集成电路D)电子管电路

12、CPU处理数据的基本单位是字,一个字的字长(D)。

A)为8个二进制位B)为16个二进制位

C)为32个二进制位D)与芯片的型号有关

13、微型计算机中,(C)的存取速度最快。

A)高速缓存B)外存储器C)寄存器D)内存储器

14、断电后计算机信息依然存在的部件为(C)。

A)寄存器B)RAM存储器C)ROM存储D)运算器

15、在使用E-mail前,需要对Outlook进行设置,其中ISP接收电子邮件的服务器称为(A)服务器。

A)POP3B)SMTPC)DNSD)FTP

16、IPv4地址是由(B)位二进制数码表示的。

A)16B)32c)24D)8

17、在磁盘上建立子目录有许多优点,下列描述中不属于建立子目录优点的是(D)。

A)便于文件管理B)解决根目录中目录项个数有限问题

B)加快文件查找速度D)节省磁盘使用空间

18、下列哪一种程序设计语言是解释执行的(B)。

A)PascalB)GWBASICC)C++D)FORTRAN

19、下面关于算法的错误说法是(B)。

A)算法必须有输出B)算法必须在计算机上用某种语言实现

B)算法不一定有输入D)算法必须在有限步执行后能结束

20、十进制书11/128可用二进制数码序列表示为:

(D)。

A)1011/1000000B)1011/100000000C)0.001011D)0.0001011

21、计算机系统总线上传送的信号有(B)。

A.地址信号与控制信号B.数据信号、控制信号与地址信号

C.控制信号与数据信号D.数据信号与地址信号

22、不同的计算机,其指令系统也不同,这主要取决于(C)。

A所用的操作系统B.系统的总体结构

C.所用的CPUD.所用的程序设计语言

23、下列说法中错误的是(B)。

A.CPU的基本功能就是执行指令。

B.CPU访问内存的速度快于访问高速缓存的速度。

C.CPU的主频是指CPU在1秒内完成的指令周期数。

D.在一台计算机内部,一个内存地址编码对应唯一的一个内存单元。

E.数据总线的宽度决定了一次传递数据量的大小,是影响计算机性能的因素之一。

24、处理器A每秒处理的指令数是处理器B的2倍。

某一特定程序P分别编译为处理器A

和处理器B的指令,编译结果处理器A的指令数是处理器B的4倍。

已知程序P在处

理器A上执行需要1个小时,那么在输入相同的情况下,程序P在处理器B上执行需

要(D)小时。

A.4B.2C.1D.1/2E.1/4

25、下列无符号数中,最小的数是(C)

A.(11011001)2B.(75)10C.(37)8D.(2A)16

26、十进制算术表达式:

3*512+7*64+4*8+5的运算结果,用二进制表示为(B).

A.10111100101B.11111100101

C1111l0100101D.11111101101

27、在config.sys文件中,装入特定的可安装设备驱动程序的命令是(D).

A.bufferB.filesC.xcopyD.device

28、DOS暂驻区中的程序主要是用于(A)

A)执行DOS内部命令B)执行DOS外部命令

C)执行DOS所有命令D)基本输入输出

29、一台计算机如果要利用电话线上网,就必须配置能够对数字信号和模拟信号进行相互转换的

设备,这种设备是(A)。

A.调制解调器B.路由器C.网卡D.网关E.网桥

30、TCP/IP协议共有(B)层协议

A)3B)4C)5D)6

31、计算机网络是一个(D)

A.管理信息系统B.管理数据系统C.编译系统D.在协议控制下的多机互连系统

32、某数列有1000个各不相同的单元,由低至高按序排列;现要对该数列进行二分法检索

(binary-search),在最坏的情况下,需检视(B)个单元。

A.1000B.10C.100D.500

33、表达式(1+34)*5-56/7的后缀表达式为(C)。

A)1+34*5-56/7B)-*+1345/567C)134+5*567/-

D)1345*+567/-E)134+5567-*/

33、二叉树T,已知其前序遍历序列为1243576,中序遍历序列为4215736,则其后序遍历序列为(B)。

A.4257631B.4275631C.4275361D.4723561E.4526371

34、二叉树T的宽度优先遍历序列为ABCDEFGHI,已知A是C的父结点,D是G的

父结点,F是I的父结点,树中所有结点的最大深度为3(根结点深度设为0),可知F

的父结点是(C)。

A.无法确定B.BC.CD.DE.E

35、由3个a,5个b和2个c构成的所有字符串中,包含子串“abc”的共有(D)个。

A.40320B.39600C.840D.780E.60

36、关于“0”的原码、反码和补码描述正确的是(C)

A.“0”的原码只有一种表示方法

B.“0”的反码只有一种表示方法

C.“0”的补码只有一种表示方法

D.“0”的原码、反码和补码均有两种表示方法

37、借助一个栈,输入顺序是123456,以下输出顺序不可能的是(A)

A.142356B.123654C.231456D.213546

38、结构化程序设计的一种基本方法是(B)

A.归纳法B.逐步求精法C.递归法D.筛选法

39、在微型计算机中,常用()码实现十进制数与二进制数之间的自动转换。

(A)BCD码(B)ASCII码(C)海明码(D)机内码

40、29、计算机中的数有浮点数与定点数两种,其中浮点数表示的数,通常由( )这两部分组成。

   A.指数与基数 

   B.尾数与小数

   C.阶码与尾数 

   D.整数与小数

答案:

C

选择题

1、设栈S的初始状态为空,现有5个元素组成的序列{1,2,3,4,5},对该序列在S栈上依次进行如下操作(从序列中的1开始,出栈后不在进栈):

进栈,进栈,进栈,出栈,进栈,出栈,进栈,问出栈的元素序列是:

_________,栈顶指针的值为______,栈顶元素为:

___________________。

解答:

出栈序列为{3,4},栈顶指针值为3,栈顶元素为5。

2、设循环队列中数组的下标范围是1..n,其头尾指针分别为f和r,则其元素个数为:

_____________________。

解答:

(r-f+n)modn

3、中缀表达式、前缀表达式、后缀表达式

(1)已知中缀表达式:

A+B*C/D

求它的前缀表达式和后缀表达式?

(2)已知前缀表达式:

+△A*B△C{注△表示一元运算符负号,即△A表示-A}

求它的中缀表达式和后缀表达式?

(1)的结果:

+A*B/CD;ABCD/*+

(2)的结果:

(-A)+B*(-C);A△BC△*+

 

4、某班有50名学生,每位学生发一张调查卡,上写a,b,c三本书的书名,将读过的书打✓,结果统计数字如下:

只读a者8人;只读b者4人;只读c者3人;全部读过的有2人;读过a,b两本书的有4人;读过a,c两本书的有2人;读过b,c两本书的有3人;问:

(1)读过a的人数是_________

(2)一本书也没有读过的人数是__________。

(1)12人

(2)30人

5、设有一棵k叉树,其中只有度为0和k两种结点,设n0,nk,分别表示度为0和度为k的结点个数,试求出n0和nk之间的关系(n0=数学表达式,数学表达式仅含nk、k和数字)。

解答:

n0和nk之间的关系为:

n0=(k-1)nk+1。

6、已知一棵二叉树的结点名为大写英文字母,其中序与后序遍历的顺序分别为:

CBGEAFHDIJ与CGEBHFJIDA,则该二叉树的先序遍历的顺序为:

解答:

ABCEGDFHIJ

7、取火柴游戏的规则如下:

一堆火柴有N根,A、B两人轮流取出。

每人每次可以取1根或2根,最先没有火柴可取的人为败方,另一方为胜方。

如果先取者有必胜策略则记为1,

先取者没有必胜策略记为0。

当N分别为100,200,300,400,500时,先取者有无必

胜策略的标记顺序为__11011__(回答应为一个由0和/或1组成的字符串)

8、一个家具公司生产桌子和椅子。

现在有113个单位的木材。

每张桌子要使用20个单位的木材,售价是30元;每张椅子要使用16个单位的木材,售价是20元。

使用已有的木材生产桌椅(不一定要把木材用光),最多可以卖160元钱。

9、给定m个有不同标号的球,标号依次为1、2、3、…、m。

将这m个球放入n个相同的盒子,不允许盒子为空,其不同的放置总数为S(m,n)。

例如:

S(4,2)=7。

求:

S(7,4)=

三、阅读程序,写出正确的运行结果(共8题,每小题8分,共64分)

1、Programexcpl;

var

x,y,y1,jk,j1,g,e:

Integer;

a:

array[1..20]of0..9;

begin

x:

=3465;y:

=264;jk:

=20;

forj1:

=1to20doa[j1]:

=0;

whiley<>0do15

begin

y1:

=ymod10;

y:

=ydiv10;

whiley1<>0do

begin

g:

=x;

fore:

=Jkdownto1do

begin

g:

=g+a[e];

a[e]:

=gmod10;

g:

=gdiv10

end;

y1:

=y1-1

end;

jk:

=jk-1

end;

j1:

=1;

whilea[j1]=0doj1:

=j1+1;

forJk:

=j1to20dowrite(a[jk]:

4);

writeln

end.

程序运行结果为:

___________________________。

答案:

914760

2、programexp1(imput,output);

vari,,s,max:

integer;

a:

array[1..10]ofinteger;

begin

fori:

=1to10doread(a[i]);

max:

=a[1];s:

=a[1];

fori:

=2to10do

begin

ifs<0thens:

=0;

s:

=s+a[i];

ifs>maxthenmax:

=s

end;

writeln(‘max=’,max)

end.

输入:

-112-1036534-4-278-12349

输出:

max=

答:

99

3、varn,jr,jw,jb:

integer;

ch1:

char;

ch:

array[1..20]ofchar;

begin

readln(n);

fori:

=1tondoread(ch[i]);

jr:

=1;jw:

=n;jb:

=n;

while(jr<=jw)do

begin

38

if(ch[jw]='R')

thenbegin

ch1:

=Ch[jr];Ch[jr]:

=ch[jw];ch[jw]:

=ch1:

jr:

=jr+1;

end

elseifch[jw]='W'

thenjw:

=jw-1

elsebegin

ch1:

=ch[jw];ch[jw]:

=ch[jb];ch[jb]:

=ch1;jw:

=jw-1;jb:

=jb-1;

end

end;

fori:

=1tondowrite(ch[i]);

writeln;

end.

输入:

10

RBRBWWRBBR

输出:

RRRRWWBBBB

4、const

u:

array[0..2]ofinteger=(1,-3,2);

v:

array[0..1]ofinteger=(-2,3);

var

i,n,sum:

integer;

functiong(n:

integer):

integer;

vari,sum:

integer;

begin

sum:

=0;

fori:

=1tondoinc(sum,u[imod3]*i);

g:

=sum;

end;

begin

sum:

=0;

read(n);

fori:

=1tondoinc(sum,v[imod2]*g(i));

writeln(sum);

end.

输入:

103

输出:

-400。

5、vari,j,k,n:

integer;

a:

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

begin

readln(n);

k:

=1;

i:

=1;j:

=1;a[i,j]:

=1;

whilek

begin

if(i=1)and(jmod2=1)theninc(j)

elseif(j=1)and(imod2=0)theninc(i)

elseif(i+j)mod2=0thenbegindec(i);inc(j);end

elseif(i+j)mod2=1thenbegininc(i);dec(j);end;

inc(k);a[i,j]:

=k;

end;

writeln(i,'/',j);

end.

输入:

1999

输出:

18/46

6、programp6

vara:

array[0..8]ofchar;

i:

integer;

begin

fori:

=1to8do

a[i]:

=char(i*2+ord(‘A’));

fori:

=1to4dobegin

a[0]:

=a[i];

a[i]:

=a[9-i];

a[9-i]:

=a[0];

end;

fori:

=1to8dowrite(a[i]);

writeln;

end.

输出:

36728458219

7

PROGRAMmyt25(INPUT,OUTPUT);

VAR

I,j:

integer;

a,b:

ARRAY[1..5]OFinteger;

BEGIN

FORi:

=1TO5DO

BEGIN

a[i]:

=2*i-1;

b[i]:

=i

END;

FORi:

=1TO5DO

FORj:

=1TO5DO

IFa[i]=b[j]THENWRITE(a[i]:

4)

END.

输出:

135{前面有三个空格,后面每两个数字之间有三个空格}

8vari,k,n:

integer;

x,w:

array[1..500]ofinteger;

begin

readln(n);

fori:

=1tondobegin

x[i]:

=0;w[i]:

=1;end;

fori:

=2totrunc(sqrt(n))+1do

ifx[i]=0then

begin

k:

=i*i;

whileK<=ndo

beginx[k]:

=i;k:

=k+i;end;

end;

fori:

=ndownto1do

ifx[i]<>0then

begin

w[x[i]]:

=w[x[i]]+w[i];

w[idivx[i]]:

=w[idivx[i]]+w[i];

w[i]:

=0;

end;

writeln(w[2],w[3]:

5,w[5]:

5);

end.

输入:

20

输出:

1884

 

四、完善程序(本题共4题,每题14分,共计28分)

本程序对随机产生的100个0到50之间的随机数用一个数组存放后进行排序,然后再将其中重复出现的数进行删除,只保留一个,使得剩下的数中任何两个都不相同且连续存储在原数组中。

constmaxn=100;typearraytype=array[1..maxn]ofinteger;

vari,j,temp,current,tail:

integer;a:

arraytype;

beginrandomize;

fori:

=1tomaxndoa[i]:

=random(51);

fori:

=1to__maxn-1do

forj:

=_i+1_tomaxndo

ifa[i]

begintemp:

=a[i];a[i]:

=a[j];a[j]:

=tempend;

fori:

=2tomaxndo

if__a[i]=abs(a[i-1])__thena[i]:

=-a[i];

tail:

=0;current:

=1;

while_____current<=maxn_____do

begin

whilea[current]<0docurrent:

=current+1;

tail:

=tail+1;

a[tail]:

=__a[current]__;

current:

=current+1

end;

if_____thenbegintail:

=tail+1;a[tail]:

=0end;

fori:

=1totaildowrite(a[i]:

5);

writeln

end.

①maxn-1

②i+1

③a[i]=abs(a[i-1])

④(current<=maxn)and(a[current]<>0)

⑤a[current]

⑥(a[tail]<>0)and(a[current]=0)

问题描述:

将n个整数分成k组(k≤n,要求每组不能为空),显然这k个部分均可得到一个各

自的和s1,s2,……sk,定义整数P为:

P=(S1-S2)2+(S1一S3)2+……+(S1-Sk)2+(s2-s3)2+……+(Sk-1-Sk)2

问题求解:

求出一种分法,使P为最小(若有多种方案仅记一种〉

程序说明:

数组:

a[1],a[2],...A[N]存放原数

s[1],s[2],...,s[K]存放每个部分的和

b[1],b[2],...,b[N]穷举用临时空间

d[1],d[2],...,d[N]存放最佳方案

程序:

programexp4;

Vari,j,n,k:

integer;

a:

array[1..100]ofinteger;

b,d:

array[0..100]ofinteger;

s:

array[1..30]ofinteger;

begin

readln(n,k);

forI:

=1tondoread(a[I]);

forI:

=0tondob[I]:

=1;

cmin:

=1000000;

while(b[0]=1)do

begin

forI:

=1tokdo①

forI:

=1tondo

sum:

=0;

forI:

=1tok-1do

forj:

=③

50

sum:

=sum+(s[I]-s[j])*(s[I]-s[j]);

if④then

begin

cmin:

=sum;

forI:

=1tondod[I]:

=b[I];

end;

j:

=n;

while⑤doj:

=j-1;

b[j]:

=b[j]+1;

forI:

=j+1tondo⑥

end;

writeln(cmin);

forI:

=1tondowrite(d[I]:

40);

writeln;

end.

1、s[k]:

=0;

2、s[b[i]]:

=s[b[i]]+a[i];

3、i+1tok

4、sum

5、b[j]=k

6、b[i]:

=1;

3.[问题描述]

给定两个自然数n,r(n>r),输出从数I到n中按降序顺序取r个自然数的所有组合。

例如,n=5,r=3时,输出的结果是

543

542

541

532

531

521

432

431

421

321

程序中用a1,a2,…ar表示一个降序排列的r个数的组合,要求a1≥r。

为了能够穷举出全部降序排列的r个数的组合,按递减顺序调整前一个组合的部

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

当前位置:首页 > 外语学习 > 法语学习

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

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