1、noip2005 初赛模拟测试题(一)一、选择题:共 20 题,每题 1.5 分,共计 30 分。每题有 5 个备选答案,前 10 个题为单选题(即每题有且只有一个正确答案,选对得分) ,后 10 题为不定项选择题(即每题有 1 至 5 个正确答案,只有全部选对才得分) 。1、计算机网络最大的优点是 。A、精度高 B、资源共享 C、运行速度快 D、存储容量大 E、逻辑判断能力强2、计算机病毒是指 。A、编制有错误的计算机程序 B、设计不完善的计算机程序 C、计算机的程序已被破坏D、以危害系统为目的的特殊的计算机程序 D、没有经过编译的计算机程序3、在各种查找算法中,平均查找长度(与关键字比较次
2、数的期望值)与查找表中元素个数 n 无关的查找方法是_。 A. 顺序查找 B. 散列查找 C. 折半查找 D. 动态查找 E、二分查找4、下列各数中最大的是_。 A、 11010110.0101(二进制) B、D6.53(十六进制) C、 214.32(十进制) D、326.25(八进制) E、23.26(三十二进制)5.已知英文字母 a 的 ASCll 代码值是十六进制数 61H,那么字母 d 的 ASCll 代码值是 A)34H B)54H C)24H D)64H E)74H6、若一台计算机的字长为 32 位,则表明该机器_。 A. 能处理的数值最大为 4 位十进制数 B. 能处理的数值最
3、多为 4 个字节C. 在 CPU 中能够作为一个整体加以处理的二进制数据为 4 个字节D. 在 CPU 中运算的结果最大为 2 32 E.表示计算机的时钟脉冲7、编译程序和解释程序是两类高级语言翻译程序,它们的根本区别在于_。A. 是否进行优化处理 B. 执行效率不同 C. 对源程序中的错误处理不同 D. 是否形成目标程序 E.编写方式不同8、在字符串“abcde”中有_个子串 。A. 14 B. 15 C. 16 D. 17 E.189、假设一棵二叉树的后序遍历序列为 DGJHEBIFCA,中序遍历序列为 DBGEHJACIF,则其前序遍历序列为 。A、ABCDEFGHIJ B、ABDEGH
4、JCFI C、ABDEGHJFIC D、ABDEGJHCFI E、ABEDGHCJFI10、某硬盘中共有 9 个盘片,16 个记录面,每个记录面上有 2100 个磁道,每个磁道分为 64 个扇区,每扇区为 512 字节,则该硬盘的存储容量为 。A、590.6MB B、9225MB C、1050MB D、1101MB E、1200M11、以下属于文件管理的是( )A. 删除文件 B. 拷贝文件 C. 移动文件 D. 运行文件 E、剪切文件12、图标是Windows操作系统中的一个重要概念,它表示Windows的对象。它可以指_ 。A、文档或文件夹 B、应用程序 C、设备或其它的计算机 D、系统文
5、件 E、以上都不正确13、发送电子邮件可包含的信息有: A、文字 B、图片 C、声音 D、程序 E、视频14、下列哪些是属于内存储器: A、硬盘 B、RAM C、ROM D、CACHE E、光盘15、计算机中声音、图形图像信息都是以文件的形式存储的,它们的文件格式有许多种,可以通过扩展名来识别,常见的文件扩展名有: BMP、 AIF、 JPG、 WAV、 GIF、 VOC 其中,表示声音文件的有 _ _,A、 B、 C、 D、 E、16、以下数据结构中哪些不是线性结构 A、有向图 B、栈 C、线索二叉树 D、B 树 E 、队列17、如果互连的局域网高层分别采用 TCP/IP 协议与 SPX/I
6、PX 协议,那么我们可以选择的互连设备应该是: A、中继器 B、网桥 C、网卡 D、路由器 E、调制解调器18、软件测试中,发现错误产生的原因依赖于所使用的调试策略,而主要的调试方法包括了: A、试探法 B、回溯法、C、演绎法 D、归纳法 E、平均法19、不能将高级语言源程序转换成目标程序的是 A、调试程序 B、解释程序 C、编译程序 D、编辑程序 E、目标程序20、 设二维数组 F 的行下标为 1 至 5,列下标为 0 至 8,F 的每个数据元素均占 4 个字节。在按行存贮的情况下,已知数据元素 F2,2的第一个字节是 1044,则 F3,4和 F4,3的第一个字节的地址分别为 和 ,A、1
7、088 B、1084 C、1092 D、1120 E、1124 二、填空题:共 2 题,第一题 5 分,第二题 5 分,共计 10 分。1、十位数 abcdefghij,其中不同的字母表示不同的数字。a 是 1 的倍数,两位数 ab 是 2 的倍数,三位数 abc 是 3 的倍数,四位数 abcd 是 4 的倍数十位数 abcdefghij 是 10 的倍数,则这个十位数是_ _。2、若今天是星期六,从今天起 102001天后的那一天是星期 _。三、程序阅读理解题:共 4 题,每题 8 分,共计 32 分。1、PROGRAM exarm( output);VAR x,y,z:integer;P
8、ROEDURE silly(x:integer;VAR y:integer);BEGINx:=5;y:=6;z:=7;writeln(x,y,z)END;BEGINx:=1;y:=2;z:=3;silly(x,y);writeln(x,y,z)END.输出结果为:2、有下面程序段FOR I:=1 TO 3 DOBEGINFOR J:=1 TO 3 DOBEGINIF I=3 THEN AI,J:=AI-1,AI-1,J+1ELSE AI,J=J;WRITE(AI,J:2)END;WRITELNEND该程序的执行结果是:3、PROGRAM TEST(INPUT,OUTPUT);VAR A,B:I
9、NTEGER;PROCEDURE P(VAR X:INTEGER;Y:INTEGER);VAR M,N:INTEGER;BEGINM:=X*Y;X:=X+5;Y:=Y+5;N:=X*Y;WRITELN(M:4,N:4)END;BEGINA:=3;B:=3;P(A,B);P(A,B)END运行结果为:4、PROGRAM EXAM(INPUT,OUTPUT);VAR A:ARRAY16 OF INTEGER;I,J,K:INTEGER;BEGINFOR I:=1 TO 6 DOREAD(AI);READLN;FOR I:=1 TO 6 DOBEGINIF I=1 THEN K:=1ELSE K:=
10、8-I;FOR J:=1 TO 6 DOBEGINWRITE(AK:2);IF K=6 THEN K:=1ELSE K:=K+1;END;WRITELNENDEND输入:8 1 4 2 5 6输出结果为:四、程序完善题:共 2 题,每题 14 分,共计 28 分。1、对给定的 10 个国家名,按其字母的顺序输出。程序如下:program ex8_3;var i,j,k:integer;t:string20;cname:array110 of string20;beginfor i:=1 to 10 do readln(cnamei);for i:=1 to 9 dobegin(1) ;for
11、j:=i+1 to 10 doif cnamekcnamej then (2);(3); cnamei:=cnamek;cnamek:=t;end;for i:=1 to 10 do writeln(cnamei);end.2、编制用筛法求 1-n(n200)以内素数的程序。分析: 由希腊著名数学家埃拉托色尼提出的所谓“筛法” ,步骤如下:将所有候选数放入筛中;找筛中最小数(必为素数)next,放入集合 primes 中;将 next 的所有倍数从筛中筛去;重复直到筛空。编程时,用集合变量 sieve 表示筛子,用集合 primes 存放所有素数。源程序如下:program ex10_3;co
12、nst n=200;var sieve,primes:set of 2n;next,j:integer;beginsieve:=2n;将所有候选数放入筛中primes:=;素数集合置空next:=2;repeat找筛 sieve 中最小一个数while not(next in sieve) and(next2 THEN RESTORE40 PRINT X;50 NEXT I60 DATA 1,2,3,4,5,670 END该程序是用 语言写的。A、c B、basic B、pascal D、java E、汇编二、问题求解:第 1 题 5 分,第 2 题 6 分,共 11 分。1、有 5 本不同的
13、书发给 5 个学生,将书全部收回后再重新发给他们,与原方案都不相同的方案共有多少种?(提示:与原方案都不同指“每个人再次发到的书都不是原来的那本” )2、将 n 个不同颜色的球放入 k 个无标号的盒子中(n=k,且盒子不允许为空)的方案数记为 S(n,k),例如 n=4,k=3 时 S(4,3)=6。问当 n=6,k=3 时,S(n,k)等于多少?三、阅读程序,写出运行结果,每小题 8 分,共 32 分。1、program noip21;var d,p:integer;beginp:=1;d:=11;while d1 do beginp:=2*(p+1);d:=d-1;end;writeln(
14、p);end.2、program noip22;function fn(n:integer):integer;beginif n2计算 d(5)=4*(d(4)+d(3)=4*(3*(d(3)+d(2)+2*(d(2)+d(1)=442、递推公式s(1,1)=1 n=k=1s(n,k)=0 n=k计算 s(6,3)=90三、写出程序结果:1、3070 2、55 3、098 4、1000四、程序填空:1、11-lr 2、lc 3、11-lc 4、lr 5、which=46、n 7、dep+1 8、flag-I 9、第九届分区联赛提高组初赛试题(提高组 PASCAL 语言 二小时完成)全部答案均要
15、写在答案卷子上,写在试卷纸上一律无效一.单项选择题(共 10 题,每题 1.5 分,共计 15 分。每题有且仅有一个正确答案.)。1.图灵 (Alan Turing) 是 ()。A) 美国人 B) 英国人 C) 德国人 D) 匈牙利人 E) 法国人2.第一个给计算机写程序的人是()。A) Alan Mathison TuringB) Ada Lovelace C) John von NeumannD) John Mc-CarthyE) Edsger Wybe Dijkstra3.十进制数 2003 等值于二进制数()。A) 0100000111 B) 10000011C) 110000111D
16、) 11111010011E) 11110100114.假设 A=true,B=false,C=ture,D=ture,逻辑运算表达式 ABCD 的值是( )。A) ture B) falseC) 0D) 1 E) NULL5.一个高度为 h 的二叉树最小元素数目是()。A) 2h+1 B) hC) 2h-1 D) 2hE) 2h-16.已知队列(13,2,11,34,41,77,5,7,18,26,15),第一个进入队列的元素是 13,则第五个出队列的元素是( )。A) 5B) 41 C) 77D) 13 E) 187.下面一段程序是用( )语言书写的。int func1(int n)int
17、 i,sum=0;for(i=1;i y) then beginz := z + (b - y + 8) div 9;x := (b - y + 8) div 9 * 9 -(b - y) * 4 + 11 * e + vc mod 4;endelsex := (y - b) * 4 + 11 * e + vc mod 4;if (a x) thenz := z + (a - x + 35) div 36;writeln(z)end.输入: 4 7 9 20 56 47 输出_3. program Program3;varm,n: integer; mark: Boolean;function
18、 test(m,N:integer):integer;var i,p: integer; flag: boolean;beginm := m - 1;i := 0; flag := False;for p:= 2*N downto (N+1) dobegini:= (i+m) mod p;if (I0) thenam:=pi-pi-1elseam:=pi;m:=m+1;while (m1) and (am-1=0) do begin m:=m-1; bm:=1;end;if (m0) then wi:=bm-1;elsewi:=b0;am-1:=am-1-1;for j:=0 to m-1 d
19、obj:=bj+1;while (m1) and (am-1=0) do begin m:=m-1; bm:=1;end;end;for i:= 0 to n-1 dobegin write(wi);write( );end;writeln( );end.输入:94 6 6 6 6 8 9 9 9 9 输出:_五. 完善程序(共 2 题,第 1 题每空 3 分;第 2 题每空 2 分。共计 28 分)。1. 翻硬币题目描述:一摞硬币共有 m 枚,每一枚都是正面朝上。取下最上面的一枚硬币,将它翻面后放回原处。然后取下最上面的 2 枚硬币,将他们一起翻面后放回原处。再取 3 枚,取 4 枚直至 m
20、 枚。然后在从这摞硬币最上面的一枚开始,重复刚才的做法。这样一直做下去,直到这摞硬币中每一枚又是正面朝上为止。例如,m 为 1 时,翻两次即可。输入:仅有的一个数字是这摞硬币的枚数 m ,0=0) thenbeginnth:=nth-m1,k,s;if (yh) then (2) ;picy,x:=UP;y:=y+1;x:=x+1;draw(3);endelse beginy:=y - 1; picy,x:=DN; x:=x+1; draw(k-1,s-1,nth);end;end;begininit;read(nth);for e:=0 to SZ-1 dofor f:=0 to SZ-1
21、dopice,f:= ;x:=0;y:=0h:=0;i:=0;while (nth-m0,2*i,0)=0) dobegin nth:= nth-m0,2*i,0;(4);end;draw(5) );for i:=h downto 0 dobeginfor e:=0 to x-1 do write(pici,e);writeln( );end;end.第十届全国青少年信息学奥林匹克联赛初赛试题( 提高组 Pascal 语言 二小时完成 ) 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 一、 单项选择题 (共 10 题,每题 1.5 分,共计 15 分。每题有且仅有一个正确答案.) 。1
22、. 设全集 I = a, b, c, d, e, f, g,集合 A = a, b, c,B = b, d, e,C = e, f, g,那么集合为( ) 。)()(BCAA. a, b, c, d B. a, b, d, e C. b, d, e D. b, c, d, e E. d, f, g2. 由 3 个 a,5 个 b 和 2 个 c 构成的所有字符串中,包含子串“abc ”的共有( )个。A. 40320 B. 39600 C. 840 D. 780 E. 603. 某个车站呈狭长形,宽度只能容下一台车,并且只有一个出入口。已知某时刻该车站状态为空,从这一时刻开始的出入记录为:“进
23、,出,进,进,出,进,进,进,出,出,进,出” 。假设车辆入站的顺序为 1,2,3,则车辆出站的顺序为( ) 。A. 1, 2, 3, 4, 5 B. 1, 2, 4, 5, 7 C. 1, 3, 5, 4, 6 D. 1, 3, 5, 6, 7 E. 1, 3, 6, 5, 74. 满二叉树的叶结点个数为 N,则它的结点总数为( ) 。A. N B. 2 * N C. 2 * N 1 D. 2 * N + 1 E. 2N 15. 二叉树 T,已知其前序遍历序列为 1 2 4 3 5 7 6,中序遍历序列为 4 2 1 5 7 3 6,则其后序遍历序列为( ) 。A. 4 2 5 7 6 3
24、1 B. 4 2 7 5 6 3 1 C. 4 2 7 5 3 6 1 D. 4 7 2 3 5 6 1 E. 4 5 2 6 3 7 16. 十进制数 100.625 等值于二进制数( ) 。A. 1001100.101 B. 1100100.101 C. 1100100.011 D. 1001100.11 E. 1001100.017. 下面哪个部件对于个人桌面电脑的正常运行不是必需的( ) 。A. CPU B. 图形卡(显卡) C. 光驱 D. 主板 E. 内存8. 下列哪个网络上常用的名字缩写是错误的( ) 。A. WWW(World Wide Web)B. URL(Uniform R
25、esource Locator)C. HTTP(Hypertext Transfer Protocol )D. FTP(Fast Transfer Protocol)E. TCP(Transfer Control Protocol) 。9. 用静电吸附墨粉后转移到纸张上,是哪种输出设备的工作方式( ) 。A. 针式打印机 B. 喷墨打印机 C. 激光打印机 D. 笔式绘图仪 E. 喷墨绘图仪10. 一台计算机如果要利用电话线上网,就必须配置能够对数字信号和模拟信号进行相互转换的设备,这种设备是( ) 。A. 调制解调器 B. 路由器 C. 网卡 D. 网关 E. 网桥二、 不定项选择题 (共
26、10 题,每题 1.5 分,共计 15 分。多选或少选均不得分) 。11. 美籍匈牙利数学家冯诺依曼对计算机科学发展所做出的贡献包括( ) 。A. 提出理想计算机的数学模型,成为计算机科学的理论基础。B. 提出存储程序工作原理,对现代电子计算机的发展产生深远影响。C. 设计出第一台具有存储程序功能的计算机 EDVAC。D. 采用集成电路作为计算机的主要功能部件。E. 指出计算机性能将以每两年翻一番的速度向前发展。12. 下列哪个(些)是 64 位处理器( ) 。A. Intel Itanium B. Intel Pentium III C. AMD Athlon64D. AMD Opteron
27、 E. IBM Power 513. (2004)10 + (32)16 的结果是( ) 。A. (2036)16 B. (2054)10 C. (4006)8 D. (100000000110)2 E. (2036)1014. 下列哪个(些)不是数据库软件的名称( ) 。A. MySQL B. SQL Server C. Oracle D. Outlook E. Foxpro15. 下列哪个(些)不是计算机的存储设备( ) 。A. 文件管理器 B. 内存 C. 显卡 D. 硬盘 E. U 盘16. 下列哪个(些)软件属于操作系统软件( ) 。A. Microsoft Word B. Wind
28、ows XP C. Foxmail D. 金山影霸 E. Red Hat Linux17. 下列说法中正确的有( ) 。A. CPU 的基本功能就是执行指令。B. CPU 的主频是指 CPU 在 1 秒内完成的指令周期数,主频越快的 CPU 速度一定越快。C. 内部构造不同的 CPU 运行相同的机器语言程序,一定会产生不同的结果。D. 在一台计算机内部,一个内存地址编码对应唯一的一个内存单元。E. 数据总线的宽度决定了一次传递数据量的大小,是影响计算机性能的因素之一。18. 彩色显示器所显示的五彩斑斓的色彩,是由哪三色混合而成的( ) 。A. 红 B. 白 C. 蓝 D. 绿 E. 橙19.
29、下列哪个(些)程序设计语言支持面向对象程序设计方法( ) 。A. C+ B. Object Pascal C. C D. Smalltalk E. Java20. 某大学计算机专业的必修课及其先修课程如下表所示:课 程 代 号 C0 C1 C2 C3 C4 C5 C6 C7课 程 名 称 高 等 数 学 程 序 设 计 语 言 离 散 数 学 数 据 结 构 编 译 技 术 操 作 系 统 普 通 物 理 计 算 机 原 理先 修 课 程 C0, C1 C1, C2 C3 C3, C7 C0 C6请你判断下列课程安排方案哪个(些)是合理的( ) 。A. C0, C1, C2, C3, C4,
30、C5, C6, C7 B. C0, C1, C2, C3, C4, C6, C7, C5C. C0, C1, C6, C7, C2, C3, C4, C5 D. C0, C1, C6, C7, C5, C2, C3, C4E. C0, C1, C2, C3, C6, C7, C5, C4三问题求解(共 2 题,每题 5 分,共计 10 分)1. 75 名儿童到游乐场去玩。他们可以骑旋转木马,坐滑行铁道,乘宇宙飞船。已知其中 20 人这三种东西都玩过,55 人至少玩过其中的两种。若每样乘坐一次的费用是 5 元,游乐场总共收入 700,可知有 名儿童没有玩过其中任何一种。2. 已知 a, b, c
31、, d, e, f, g 七个人中,a 会讲英语;b 会讲英语和汉语;c 会讲英语、意大利语和俄语;d 会讲汉语和日语;e 会讲意大利语和德语;f 会讲俄语、日语和法语; g 会讲德语和法语。能否将他们的座位安排在圆桌旁,使得每个人都能与他身边的人交谈?如果可以,请以“a b”开头写出你的安排方案: 。四阅读程序(共 4 题,每题 8 分,共计 32 分)1program progam1;varu: array 03 of integer;a, b, c, x, y, z: integer;beginread(u0, u1, u2, u3);a := u0 + u1 + u2 + u3 - 5
32、;b := u0 * (u1 - u2 div u3 + 8);c := u0 * u1 div u2 * u3;x := (a + b + 2) * 3 - u(c + 3) mod 4;y := (c * 100 - 13) div a div (ub mod 3 * 5);if(x+y) mod 2 = 0) then z := (a + b + c + x + y) div 2;z := (a + b + c x - y) * 2;writeln(x + y - z);end.输入:2 5 7 4输出: 。2program program2;vari, number, ndata, s
33、um: integer;data: array1100 of integer;procedure solve(s, sign, n: integer);var i: integer;beginfor i := s to ndata do begininc(sum, sign * (number div (n * datai);solve(i + 1, -sign, n * datai);end;end;beginread(number ,ndata);sum := 0;for i := 1 to ndata do read(datai);solve(1, 1, 1);writeln(sum);
34、end.输入:1000 3 5 13 11输出: 。3program program3;var c: array13 of string200;s: array110 of integer;m, n, i: integer;procedure numara;var cod: boolean;i, j, nr: integer;beginfor j := 1 to n do beginnr := 0; cod := true;for i := 1 to m doif ci, j = 1 then beginif not cod then begincod := true; inc(snr); n
35、r := 0;endendelse beginif cod then beginnr := 1; cod := false;endelse inc(nr);end;if not cod then inc(snr);end;end;beginreadln(m, n);for i := 1 to m do readln(ci);numara;for i := 1 to m doif si 0 then write(i, , si, );end.输入:3 101110000111 11000011111000000011输出: 。4program program4;constu: array02 o
36、f integer = (1, -3, 2);v: array01 of integer = (-2, 3);vari, n, sum: integer;function g(n: integer): integer;var i, sum: integer;beginsum := 0;for i := 1 to n do inc(sum, ui mod 3 * i);g := sum;end;beginsum := 0;read(n);for i := 1 to n do inc(sum, vi mod 2 * g(i);writeln(sum);end.输入:103输出: 。五完善程序 (前
37、 5 空,每空 2 分,后 6 空,每空 3 分,共 28 分)1Joseph题目描述:原始的Joseph问题的描述如下:有 n个人围坐在一个圆桌周围,把这n个人依次编号为1,n。从编号是1的人开始报数,数到第m 个人出列,然后从出列的下一个人重新开始报数,数到第m 个人又出列,如此反复直到所有的人全部出列为止。比如当n=6,m=5的时候,出列的顺序依次是5,4,6,2,3,1。现在的问题是:假设有k个好人和k个坏人。好人的编号的1到k,坏人的编号是k+1到2k。我们希望求出m的最小值,使得最先出列的 k个人都是坏人。输入:仅有的一个数字是k(0 k 14) 。输出:使得最先出列的k个人都是坏人的m 的最小值。输入样例:4输出样例:30程序:program program1;vari, k, m, start: longint;