当前位置:首页 >> IT/计算机 >> 信息学竞赛选择(全部)

信息学竞赛选择(全部)


信息学奥林匹克联赛模拟试题(初赛) (普及组)

基本知识:
1、计算机网络最大的优点是 A、精度高 B、资源共享

B

。 D、存储容量大 E、逻辑判断能力强

C、运行速度快

2、计算机病毒是指

D

。 B、设计不完善的计算机程序 C、计算机的程序已被破坏

A、编制有错误的计算机程序

D、以危害系统为目的的特殊的计算机程序 4、下列各数中最大的是_ _D __。 A、 11010110.0101(二进制) D、326.25(八进制)

E、没有经过编译的计算机程序

B、D6.53(十六进制)

C、 214.32(十进制)

E、23.26(三十二进制)

5.已知英文字母 a 的 ASCll 代码值是十六进制数 61H,那么字母 d 的 ASCll 代码值是 A)34H B)54H C)24H D)64H E)74H

D

6、若一台计算机的字长为 32 位,则表明该机器_ D __。 A. 能处理的数值最大为 4 位十进制数
32

B. 能处理数值最多为 4 个字节

C. 在 CPU 中能够作为一个整体加以处理的二进制数据为 4 个字节 D. 在 CPU 中运算的结果最大为 2 E.表示计算机的时钟脉冲

7、编译程序和解释程序是两类高级语言翻译程序,它们的根本区别在于 _ A. 是否进行优化处理 D. 是否形成目标程序 B. 执行效率不同 E.编写方式不同

D

_。

C. 对源程序中的错误处理不同

8、在字符串“abcde”中有___个子串 C A. 14 B. 15 C. 16 D. 17 E.18 10、某硬盘中共有 9 个盘片,16 个记录面,每个记录面上有 2100 个磁道,每个磁道分为 64 个扇区, 每扇区为 512 字节,则该硬盘的存储容量为 A、590.6MB B、9225MB C、1050MB ) D. 运行文件 E、剪切文件

B

。 E、1200M

D、1101MB

11、以下属于文件管理的是 ( C A. 删除文件 B. 拷贝文件

C. 移动文件

12、图标是Windows操作系统中的一个重要概念,它表示 Windows的对象。它可以指 A、文档或文件夹 B、应用程序 C、设备或其它的计算机 D、系统文件

D

___ 。

E、以上都不正确

13、发送电子邮件可包含的信息有 : A、文字 B、图片 C、声音

A,B,C,E
E、视频

D、程序

14、下列哪些是属于内存储器:

B,C,D

A、硬盘

B、RAM

C、ROM

D、CACHE

E、光盘

15、计算机中声音、图形图像信息都是以文件的形式存储的,它们的文件格式有许多种,可以通过 扩展名来识别,常见的文件扩展名有:① BMP ② AIF ③ JPG ④ WAV ⑤ GIF ⑥ VOC 其中,表示声 音文件的有__ A、 ①②

D _,
B、③⑤ C、④⑥ D、 ②④⑥ E、②③④

17、如果互连的局域网高层分别采用 TCP/IP 协议与 SPX/IPX 协议,那么我们可以选择的互连设备 应该是:

C
B、网桥 C、网卡 D、路由器 E、调制解调器

A、中继器

18、软件测试中,发现错误产生的原因依赖于所使用的调试策略,而主要的调试方法包括了: C A、试探法 B、回溯法、C、演绎法 D、归纳法 E、平均法

19、不能将高级语言源程序转换成目标程序的是 A、调试程序 B、解释程序 C、编译程序

E
D、编辑程序 E、目标程序

1、当一个应用程序窗口被最小化后,该应用程序将( D )。 A)被终止执行 B)继续在前台执行 C)被暂停执行 D)被转入后台执行 2、在"替换"对话框中指定了查找内容但没有在"替换为"框中输入内容,则执行"全部替 换"后,将(B )。 A)只进行查找,不进行替换 B)不能执行,提示输入替换的内容 C)每找到一个欲查内容,就提示用户输入替换的内容 D)把所有找到的内容删除 3、计算机网络最主要的功能在于( D )。 A)扩充存储容量 B)提高计算速度 C)传输文件 D)共享资源 4、在计算机领域中,通常用英文单词"BYTE"来表示( B )。 A)字 B)字长 C)二进制位 D)字节 5、发现计算机病毒后,一种较为彻底的清除方法是( D )。 A)删除磁盘文件 B)格式化磁盘 C)用查毒软件处理 D)用杀毒软件处理 7、互联网址中公司的顶级域名一般是( A )。 A)NET B)GOV C)EDU D)COM 8、在微机中,硬盘连同其驱动器属于( A )。 A)外(铺助)存储器 B)输入设备 C)输出设备 D)主(内)存储器 9、在全角状态下,输入的字母在屏幕上占有( B )个 ASCII 码字符的位置。 A)1 个 B)2 个 C)3 个 D)4 个 10、二进制数 10011010 和 00101011 进行逻辑乘运算(即"与"运算)的结果是( B )。 A)00001010 B)10111011 C)11000101 D)11111111 12、下列字符中,其 ASCII 码值最大的是( D )。 A)9 B)D D)a D)y

14、数字字符"1"的 ASCII 码的十进制表示为 49,那么数字字符"8"的 ASCII 码的十进制 表示为( A )。 A)56 B)58 C)60 D)54 15、信息高速公路是在( C )年提出的? A)1991 B)1992 C)1993 D)1994 16、下列四个无符号十进制整数中,能用八个二进制位表示的是( D )。 A)257 B)201 C)313 D)296 17、若在一个无符号非零二进制整数右边加两个零形成一个新的二进制数,则新数的值 是原数值的( B )。 A)四倍 B)二倍 C)四分之一 D)二分之一 18、衡量网络上数据传输速率的单位是 bps,其含义是( )。 A)信号每秒传输多少公里 B)信号每秒传输多少千公里 C)每秒传送多少个二进制单位 D)每秒传送多少个数据 19、在计算机领域中通常用 MIPS 来描述( )。 A)计算机的运算速度 B)计算机的可靠性 C)计算机的可运行性 D)计算机的可扩充性
1、八进制数 116 转换成十进制数是( A、116 A、源程序 A、字长 B、120 C、118 2、用高级语言所编写的程序是( B、编译程序 B、存储容量 11、衡量计算机的性能指标主要有( 12、数值等于十进制数 50 的是( A、110010 ( 2 ) D、101 ( 7 ) B、62 ( 8 ) E、122 ( 6 ) 。 C.汇编语言 。 C. CPU 。 C. 十六进制数 15 个汉字 D. 140 万 C. 12 。 driver D. 16 D. E.140 。 E.dos device E.10 D. 十进制数 15 E.十六进制 23 D. DBASE E.BASE D. 机器语言 E.PASCAL 语言 ) C、可执行程序 ) 。 D、主频 E、运算速度 ) 。 C、33 ( 1 6 ) C、存取周期 D、编辑程序 )

D、160

1.计算机能直接识别的语言是 A.BASIC 语言 A.RAM B. 低级语言 2.只读存储器的英文简称是 B. ROM 3.与二进制数 10101 相等的数是 A.八进制数 70707 A.72 万 A.buffer A.8 B. 7 B. 十进制数 23 C. 144 万 files C. 4.一张 3.5 英寸的软盘能存储约 B. 70 万 B.

5.在 config.sys 文件中 ,装入特定的可安装设备驱动程序的命令 6.在计算机中,ASCII 码是 7.计算机的软件系统通常分为 A.系统软件与应用软件 B.高级软件与一般软件 C.管理软件与控制软件 D.军用软件与民用软件 E.高级软件与民用软件 位二进制代码。

8.断电后计算机信息依然存在的部件为 A.寄存器 B. RAM 存储器 C. 10.以下对 WINDOWS 的叙述中,正确的是

。 ROM 存储器 。 D. 运算器 E.控制器

A. 从软盘上删除的文件和文件夹,不送回倒回收站。 B. 在同一个文件夹中,可以创建两个同类、同名的文件 C. 删除了某个应用程序的快捷方式,将删除该应用程序对应的文件。 D. 不能打开两个写字板应用程序。 E. 任务栏的大小不能改变。 11.E-MAIL 邮件本质上是一个 A.文件 A.2 A.Internet B. 电报 B. 3 B.CERNET 12.运算 18 MOD 4 的结果是 。 C. 。 C. 8 C.Novell D.4 D.CHINANET )。 D. FOXMAIL E. UNIX ) D.(A7)16 E.6 . E.NT 网 电话 D. 电话 E.电子

18.按通信距离划分,计算机网络可以分为局域网和广域网。下列网络中属于局域网的是

16. 以下列出的软件中,属于操作系统的是 ( A.EXCEL B. WINDOWS 98

C. WORD

1、下面四个不同的进制的数,最小的一个数是( A.(11011001)2 码值是( A.98 3、算法是指( ) B.62 ) C.99 B.(75)10 C.(37)8

2、已知小写字母“m”的十六进制的 ASCII 码值是 6D,则小写字母“c”的十六进制数据的 ASCII D.63

A.为解决问题而编写的计算机程序 B.为解决问题而采取的方法与步骤 C.为解决问题而需要采用的计算机语 言 D.为解决问题而采用的计算方法 4、十进制算术表达式:3*512+7*64+4*8+5 的运算结果,用二进制表示为( A.10111100101 B.11111100101 C.11110100101 D.11111101101 )

1、以下四个不同进制的数中,最小的是( ) A、 (75) 10 B、 (37) 8 C、 (A7) 16 D、 (11011001) 2 E、47 3、一般说来,计算机的外存储器比内存储器( ) A.容量大速度快 B.容量小速度快 C.容量小速度慢 D.容量大速度慢 E、以上答案都不是 10. 已知小写字母“m”的十六进制的 ASCII 码值是 6D,则小写字母“c”的十六进制数 据的 ASCII 码值是( ) A.98 B.62 C.99 D.63 E.64 A、 1、人们在谈论计算机的时候,经常提到的 "586"和"奔腾"是指( A.显示器 B.存储器 C.中央处理器 D.运算器 )

2、关于Windows的说法,正确的是(

)。

A.Windows是迄今为止使用最广泛的应用软件。 3.使用Windows时,必须要有Ms-Dos的支持。 C.Windows是一种图形用户界面操作系统,是系统操作平台。 D.以上说法都不正确。 4、下列关于Windows 95窗口的叙述中,错误的是( A.窗口是应用程序运行后的工作区 C.窗口的位置和大小都能改变 A.Alt 键 B.Ctrl 键 ) B.同时打开的多个窗口可以重叠排列 D.窗口的位置可以移动,但大小不能改变 ) 。 D.Ctrl+Alt 键 ) 。 D.继续执行 D.光盘、声卡

5、要选定多个不连续的文件(文件夹) ,要先按住( C.Shift 键

6、关闭一个应用程序窗口后,该程序将( A.被暂停执行 A.文字、图形 A.电子邮件 B.被终止执行 ) 。 7、多媒体信息不包括(

C.被转入后台执行 C.影像、动画

B.音频、视频 B.文件传输 B.网卡

8、下列四项内容中,不属于Internet(因特网)基本功能是 C.远程登录 C.WINDOWS NT D.实时监测控制 9、如果要以电话拨号方式接入INTERNET网,则需要安装调制解调器和______。 A. 浏览器软件 10、 A、568 A、8 D.解压卡 十进制 1385 转换成十六进制数为() B、569 B、16 C、D85 C、32 D、D55 ) ) D、TCP 和 IPX
) 。 E.256 ) 。 D.Windows2000 D.扫描图画 E.Unix E.打印

11、一个字长的二进制数是(

D、随计算机系统而不同的 C、IP 和 SPX
D.100 C.Linux

13、Internet 上使用的两个最基本的协议是( A、TCP 和 IP
A.32 A.Java A.编辑文稿 的中文意思是( A.因特网连接 远程登录的是( A.WWW A.VC A.磁盘 B.64

B、TCP 和 SPX
C.128

1、二进制数 01100100 转换成十六进制数是(

2、操作系统是一类重要的系统软件,下面几个软件中,不属于系统软件的是( B.MS-DOS B.读写磁盘 ) 。 B.因特网使用 ) 。 C.Telnet C.BASIC C.显示器 D.E-mail D.HTTP D.声音 E. FTP C.因特网设计 D.因特网服务提供者 3、计算机病毒的传染是以计算机运行和(

)为基础的,没有这两个条件,病毒是不会传染的。

C.编程序

4、因特网不属于任何个人,也不属于任何组织。其中在网络知识这一块中 有一个英文简写 ISP,它 E.信息传输

5、Internet 给我们提供了资源共享、浏览、检索信息和远程登录等多种服务,下面几个选项中用于 B.TCP/IP B.HTML B.音箱

6、IE 是目前流行的浏览器软件,它的工作基础是解释执行用( E.VB 11、多媒体技术中的“多媒体”的含义主要是指如(

)语言书写的文件。

)等多种表达信息的形式。 E.图像

12、下面有关计算机知识说明,正确的是( B. FOXMAIL 是用于收发电子邮件的工具

) 。

A. 在 WINDOWS98 操作系统下,删除磁盘中的文件时都先存放在回收站中 C. 文件夹组织是一个有层次的树状结构,其中最顶层的是桌面 D.存储器具有记忆能力,其中的信息任何时候都不会丢失 E. 为了提高软件的测试效率,应该选 择发现错误的可能性大的测试数据 6.一个 24*24 点阵的汉字字形信息所占的字节数为 ( (A) 2 (A) RAM 中 (B) 8 (C) 24 (D) 32 7. 在微机系统中,最基本的输入输出模块 BIOSD 存放在( (B) RMO 中 (C) 硬盘中 (D)寄存器中 )。 (E) 72 )。 (E)控制器中 )。 (E)111000

8. 十进制算术表达式:3*512+5*64+2*8+1 的运算中,用二进制表示为( (A)1011010001 (A).主机 (B) 10110100011 ) (C).声卡 (D). 音箱 (C) 11101010001 16. 以下属于多媒体硬件的是( (B).光驱

(D) 11110100011

(E). 超级解霸 )。

19.在 windows 中,最小化一个应用程序窗口后,该程序将( (A)被终止执行 (A)CONST t = true (B) 被暂停执行 (C)被转入后台 ) 20. 下面的常量说明中,正确的是( (B)、CONST b, C = 45

(D)继续执行 (E)以上答案都不对 (D)、CONST (E)CONST a= ’A’ (E)信息存储 D)电子管电路

(C)、CONST M = 100,15 )

N = 1 OR 2

18.下列属于信息处理的是( (A)信息加工 A)中小规模集成电路 A)CPU A) .jpg 微型计算机的问世是由于(

(B)信息分类 )的出现。 B)晶体管电路

(C)信息技术

(D)信息采集

C)(超)大规模集成电路 )。 C)主机

2)微型计算机的运算器、控制器及内存储器的总称是( B)ALU(算术逻辑部件) B) .bmp )计算机。 B)装有 CD-ROM 的 C).gif

D)MPU(微处理器) )。 D).tiff

3)用画笔(Paintbrush)绘制图形后并存储在文件中,该图形文件的文件名缺省后缀为(

4)多媒体计算机是指( A)专供家庭使用的

C)连接在网络上的高级 5)下列存储器中,存取速度最快的是:( A)软盘 B)硬盘

D)具有处理文字、图形、声音、影像等信息的 )。 C)光盘 )操作。 D)写入 )可以被查到。 D)内存

6)把计算机内存中的数据放到磁盘上,称为( A).打印 7) B).输入

C)读出

在 Windows 98 中,通过查找命令查找文件时,若输入 F*.?,则下列文件( A) F.BAS B) FABC.BAS )。 B)回收将要删除的用户程序 C) F.C D) EF.C

8) WINDOWS 中的回收站的作用是( A)回收编制好的应用程序

C)回收并删除应用程序

D)回收用户删除的文件或文件夹

9)在 windows 中,如果一个窗口代表一个应用程序,为了终止该程序的运行,则应在控制菜单中选 择( A)还原 )。 B)关闭 )。 C)最大化 D)最小化

10)下列各种说法中,正确的是( 计算机中所有信息都采用二进制编码

所有的十进制小数都能准确地转换为有限位二进制小数 汉字的计算机机内码就是区位码 D)存储器具有记忆能力,其中的信息任何时候都不会丢失 11)计算机病毒传染的必要条件是: ( A)在内存中运行病毒程序 C)在内存中运行含有病毒的可执行程序 12)算式(2047)10-(3FF)16+(2000)8 的结果是( A)(2048)10 B)(2049)10 )。 B)对磁盘进行读写操作 D)复制文件 )。 D)(1AF7)16

C) (3746)8 )

13)QB 系统设置能显示正整数的最大值。其中:长整型数是 ( A)32767 B)32768 C)2147483647 )

D)2147483648

14)数值 24.876 表示成科学记数法,正确的是( A)0.24876E2 B)24.876E1

C)2487.6E-2 )。

D)2.4876E+1

15)启动 WORD 的不正确方法是( 单击 Office 工具栏上的 Word 图标 单击“开始”→“程序” → Word C)

单击“开始”→“运行”,并输入 Word 按回车

D) 双击桌面上的“Word 快捷图标” 16)我国于( A)1991 )年实现了与 Internet 国际互联网的联接。 B)1992 C)1993 D)1994 )。

17)资源管理器的目录前图标中增加“ +”号,这个符号的意思是( A)该目录下的子目录已经展开 C)该目录下没有子目录 D)该目录为空目录

B)该目录下还有子目录未展开

A.局域网 B.城域网 C.广域网 D.增值网 2、小张用十六进制,八进制和十进制写了如 下一个等式:64-13=33 式中三个数是各不相同进位制的数,试问 64,13,33,分别为________。 A.八进制,十进制,十六进制 B.十进制,十六进制,八进制 C.八进制,十六进制,十进制 D.十进制,八进制,十六进制 3、表达式(4 MOD (-3))与(-4 MOD 3)的值为:_______。 A.-1,-1 B.1,-1 C.-1,1 D.1,1

4、试指出:下列 if 语句中,当 x=80 时, 运行的结果为______。 begin y:=0; readln(x); if x<0 then y:=5 else if x<10 then begin y:=10; if x<100 then y:=100; end else y:=200; write('y=',y); end. A. y=9 B.y=200 C.y=10 D. y=100

6、ASCII 码是( ) 。 A.国标码 B.二进制编码 C.十进制编码 D.美国标准信息交换码 1.组建计算机网络的目的是为了能够相互共享资源,这里的计算机资源主要是指硬件、 软件与___________。 A. 大型机 B. 通信系统 C. 服务器 D. 数据 E.软件 2. (101.101)2=(______)10 A.5.625 B.5.5 C.3.525 D.5.4 E.5.2 3.对于一个 24*24 的汉字点阵来说,一个汉字所占存储量为 _______个字节。 A.11 B.72 C.13 D.14 E. 36 4.连接到 Internet 上的每台计算机都必须有一个_______地址,该地址共______个字节。 前面若干字节表示______;后面若干字节表示_______。为了避免使用数字,人们经常用 字母代替,这些名字称为________。 A.IP、四、网络地址、计算机地址、网名 B.网络、四、IP 地址、网内计算机地址、域名 C.网络、不超过十、网页、网址、网名 D.IP、四、网络地址、网内计算机地址、域名 E.域名、八、网络地址、网内计算机地址、网名 13.关于 Windows 95 中"开始"菜单中的"运行"项,错误的是_________ A.可以运行 DOS 的全部命令 B.仅可以运行 DOS 的内部俞令 C.可以运行 DOS 的外部命令和可执行文件 D.仅可以运行 DOS 的外部命令 E.只能运行 DOS 的部分外部命令 15.磁盘存储器的数据存取速度与下列哪一组性能参数有关? A. 平均等待时间,磁盘旋转速度,数据传输速率 B. 平均寻道时间,平均等待时间,数据传输速率

C. 数据传输速率,磁盘存储密度,平均等待时间 D. 磁盘存储器容量,数据传输速率,平均等待时间 E. 平均等待时间,磁盘旋转时间,磁盘存储器容量 16.下面是关于 Windows 95 文件名的叙述,错误的是 A.文件名中允许使用汉字 B.文件名中允许使用多个圆点分隔符 C.文件名中允许使用空格 D.文件名中允许使用竖线("|") E.文件名种允许使用”*”号 17.下面有关计算机操作系统的叙述中,不正确的是 A. 操作系统属于系统软件 B. 操作系统只负责管理内存储器,而不管理外存储器 C. UNIX 是一种操作系统 D. 计算机的处理器、内存等硬件资源也由操作系统管理 E.网络资源由操作系统管理 18.下列 IP 地址中正确的是_________。 A.202.300.12.4 B.192.168.0.3 C.100:128:35:91 D.111 -102 -35 -21 E. 10.7.5.3 19.下列中错误的 PASCAL 表达式是__________。 A. 10e6*3.7 B. 17 DIV 3 C. 18 DIV 3*4.0 D. 4.018 DIV 3 E.(1+2)MOD 2*3 20. 下列选项中,属于计算机病毒特征的是___________. A. 破坏性 B. 潜伏性 C. 传染性 D. 免疫性 E.寄生性 同时处理 32 位二进制数据 D.在 CPU 中运算的最大结果为 2 的 32 次方 8、假设一台计算机的地址总线为 16,那么中央处理器 CPU 能访问的最大存储器容量为 ( ) A. 2 * 16 KB B.16KB C.216B D.16*1024*8 B 9、计算机最终处理的信息形式是( ) A.ASCII 码 B.BCD 码 C.二进制 10、与十六进制数 6F 等值的八进制数是( A.166 B.139 C.157 D.183
1.下列不属于输入设备的是 ( )。 A. 打印机 B. 扫描仪

D.十六进制 )

C. 手写笔

D. 鼠标

5.能将高级语言源程序转换成目标程序的是 ( )。 A.调试程序 B.解释程序 C.机器语言程序 D.编译程序 6.计算机能够自动工作,主要是因为采用了 ( )。 A.二进制数制 B.高速电子元件 C.存储程序控制 10.在 TCP/IP 协议中下列服务不属于应用层的是 ( )。 A.WWW B.FTP C.SMTP D.TCP 13.下面有关计算机知识的说明,正确的说法是 ( ) 。

D.程序设计语言

A.BASIC 语言是一种高级语言,每台计算机都必须配备 B.在 Windows98 操作系统下,删除磁盘中的文件时都先存放在回收站中 C.计算机病毒对人的健康有害,所以要积极预防 D.在树型目录结构中,允许两个文件名相同 E. 汇编语言是比 BASIC 语言执行速度更快的语言 17.有关存贮容量的说法,正确的是 ( )。 A.计算机中的字节是存贮容量的基本单位。 B.一个字由 16 个二进制位(bit)组成。 C.在文件中任何一个汉字均占用 2 个字节。 D.1KB=1024 个字节 E.CPU 能访问的最大存储器容量取决于控制总线 1.一个汉字在计算机中用 ( A. 1 bit B. 1 byte C. 2 bit 2.下列汉字输入法中,没有重码的是 ( A. 五笔字型 B.拼音 C. 区位码 )表示。 D. 2 byte ) D.自然码

E. 4 byte

D.智能 ABC )

3.不通过“开始”菜单的“关闭系统”选项直接关断计算机电源,则( A. 主板会损坏 B. 未保存的数据会丢失 C. 正在运行的应用程序会被破坏 D. 硬盘会损坏 E. 对计算机没有影响。 4.为保持软盘驱动器的正常工作,应做到( A. 定期清洗软磁盘片; C. 定期使用磁头清洁盘对磁头进行清洗;

) B. 经常给软盘驱动器加润滑油; D. 定期使用。 ) 。

5.一个应用程序的快捷方式被创建在桌面上,如果从桌面把这个快捷方式删除,则( A. 该应用程序可被删除,但可从“回收站”恢复出来; B. 该应用程序可被直接删除,不能从“回收站”恢复; C. 系统将询问“是否将该应用程序删除?” ; D. 该应用程序将被删除; E. 该应用程序不会被删除 。 6.Internet 使用的 IP 地址是由小数点隔开的四个十进制数组成,下列属于 IP 地址的是( A. 300.123.234.0 B. 0.123.456.1 C. 2.123.1.168 D. 256.255.0.1 E. 192.168.0.256 7.计算机网络是最突出的优点是( A. 存储容量大; B. 运算速度快; D. 资源共享 E. 互相通信 ) C.运算精度高



8.至今为止,计算机中的所有信 息仍以二进制方式表示的理由是( A. 节约元件 B. 运算速度快 C.物理器件性能所致 D. 信息处理方便 E. 使计算机知识产生神秘感



9.每个计算机系统都有自己的字符集,以便和外部世界通讯。目前,多数计算机系统采用美国标准 信息交换码(即 ASCII 字符集) 。基本的 ASCII 字符集中共有 128 个字符,是通过( )二进制代码 来表示。 A.1 个 B.2 个 C.7 个 D. 8 个 E.16 个 20.下列( )是网络操作系统。 A.UNIX B.NETWARE C.WINDOWS D.DOS E.LINIX

11.在计算机中,存储器存储信息的单位可以是( A.二进制位 A A A A A A A 8086 483 病茵 1998 Winzip Dos bit B B B B B B B B. 一个字 80286 488 数据 1999 Arj Windows byte B 图灵
B ROM 中

) E.兆字节(MB) Pentium 以上都不对 生物体 年。 2002 都可以 WPS type 提出 E 比尔·盖茨
E 显存中

C.字节(B) C C C C C C C 80386 383 程序 2000 RAR UNIX word D D D D D D D

D. 千字节 80486 388 毒素 2001 WPS Linux binary E E E E E E E

1.32 位 CPU 出现在 2.十六进制数 1E3 转换成十进制数是 3.计算机病毒是一些 4.我国研制的超级计算机“曙光 3000”是在 5.下列不可以用来压缩文件的软件是 6.属于单任务的操作系统为 7.在计算机中,度量的最小单位是 8.二进制数和程序存储控制为基础的计算机结构由 A 冯?诺依曼
A RAM 中

C 帕斯卡
C 硬盘中

D 西蒙
D 寄存器中

9. 在 微 机 系 统 中 , 最 基 本 的 输 入 输 出 模 块 BIOS 存 放 在 10.设置 E-MAIL 软件时,下面哪项为收信服务器 A POP3 B B 硬盘 SMTP C 光盘 C MAIL D 闪盘 D ADSL E 11. 下列设备属于存储器的是 A 软盘 E 麦克风 D PASCAL 语言 E C 语言 12. 属于高级语言的是 A 机器语言 B 汇编语言 C BASIC 语言 13. 下列叙述正确的是 A 功能键表示的功能是由硬件确定的。 B 关闭显示器的电源,将使正在运行的系统立即停止运行。 C 主板上的存储器是内存储器。 D 电源断开后,RAM 存储器中的信息会消失。 E 显示适配器是系统总线与显示器之间的接口。 14. TCP/IP 协议规定不能用于 Internet 上的 IP 地址是 A B C D E 202.104.76.193 10.9.5.2 192.104.76.93 192.104.76.55 201.105.25.11 。 都不正确

15. 计算机犯罪主要有 A 向计算机系统装入欺骗性数据或记录。 B 未经批准使用计算机资源。 C 篡改或窃取信息或文件。 D 盗窃或诈骗系统管理的财产。 E 破坏计算机资产。 16. 结构化程序设计的基本结构是

A 顺序结构 A)143.46875 D)143.37625

B 框架结构

C 混合结构

D 分支结构 )

E 循环结构

1、与十六进制数 8F.78H 等值的十进制数是( B)143.50125 E)143.47875

C)143.48325

3、下面哪一种操作系统不能认为是网络操作系统?( A)Netware A)CAD B)UNIX B)CAE C)CAM C)Windows 98 ) D)CAI 4、下列为计算机辅助教学的英文缩写是?(

) D)Windows NT E)CIA E)LINUX

10、32 位的 PC 机,一个字节由多少位组成?( A)6 B)4 C)8 ) B)文件传送 FTP D)32 E)16



13、TCP/IP 代表传输控 制协议 /互 连网协议 ,其 实它代表 一个标 准协议 组,下面 属于这 个标准 协议 组的协议是( D)APPLETALK A)网络协议 A)用电子邮箱 D)NETANTS 1、利用 A.多媒体技术 D. 多功能模块 2、求 X=+1001001 的反码是: A、[X] 反 = 11001001 D、[X] 反 = 1110011 A、连 A、128 A、289 B、包括 B、64 B、589 。 C、[X] 反 = 01001001 B、[X] 反 = 0110110 E、以上均不对 C、在 C、148 C、450 B、图灵 D、到 D、127 D、894 C、帕斯卡 E、属 E、255 。 E、890 提出。 D、西蒙 全部丢失。 A)简单邮件传送协议 SMTP C)远程上机 TELNET )

E)HTTP B)网络语言 C)网络接口 ) C)OUTLOOK D)网络标准 E)网络传输

14、在计算机网络中,互相连接的结点之间赖以互相通信和交换数据的基础是( 19、收发电子邮件可以用什么方法?( B)用 FOXMAIL E)超级兔子

可以将耳机、笔记本电脑、冰箱等毫不相关的产品紧密结合在一起。 B. 智能技术 C、 蓝牙技术 E、 多操作系统

3、电子邮箱地址中的符号“ @”表示的含义是: 4、深度为 7 层的的二叉树至多有多少个结点: 5、二进制数(1101111110) 2 转换成十进制数是 8、二进制数和程序存储控制为基础的计算机结构是由 A、冯.诺依曼

9、微型计算机在工作中沿未进行存盘操作,突然电源中断,则计算机 A、ROM 和 RAM 中的数据 C、硬盘中的数据 E、以上都不对 10、在 Windows98 操作中,如果某个菜单显得颜色暗淡,则表示 A、 只要双击,就能选中 B、必须连击两次才能选中 C、必须连续击三次,才能选中 D、单击选中后,还会出现一个方框要求操作者进一步输入信息 B、ROM 中的数据 D、RAM 中的数据

E、在当前情况下,这项选择没有意义的,选中它不会有任何反应。 11、程序设计中的三种基本控制结构是: A、顺序结构 A、OFFICE2000 B、递归结构 C、分支结构 。 C、Dos6.22 。 D、WindowsXP E、UNIX D、过程结构 E、循环结构 12、下面属于操作系统的软件是: B、Windows98 13、以下有关计算机病毒的描述正确的是

A、 计算机病毒具有破坏性 C、 计算机病毒可以传染给操作者 E、 计算机病毒与生物病毒属同种类型
14、通常一个计算机系统包括( A、硬件系统 D、软件系统。 A、.doc A、服务器 B、.bmp ) 。 B、计算机的 CPU E、Windows 操作系统 C、.jpg

B、 计算机病毒会影响计算机运行 D、计算机病毒具有寄生性

C、系统软件和数据库。

17、下列文件扩展名为图片格式的是: D、.txt E、.swf D、网络操作系统 E、网站 18、一个基本局域网包含下列哪些部分: B、网络管理员 C、网络连接设备 19、下列哪些 IP 地址不能在 Internet 上使用? A、127.10.23.14 B、10.9.4.189 C、134.135.136.22 D、192.197.123.13 E、127.0.0.1 1、 一台计算机一经设计出厂,其指令系统_____ A、已确定 B、再经软件人员编制而成 C、可继续其功能 D、属系统软件

2、把整数 7 转换为字符’7’的表达式是_____ A、 Chr(7)-ord(‘0’) B、 Chr(7+ord(‘0’) ) B、chr(7-ord(0) ) D、chr(7+ord(0) )

3、_____接口是一种通用型系统级接口,它连接的外设可以是硬盘驱动器、光盘驱动器和扫描仪等。 A、RS232 B、IDE C、EIDE D、SCSI

4、1GB=_____字节。 A、2 20 B、2 30 C、10 6 D、10 9

5、主存储器系统中使用 Cache 的目的是_____ A、增加主存容量 C、存放 BIOS B、存放常用的系统程序 D、提高 CPU 存取主存的速度

6、从以下叙述中选出最确切叙述_____ A、CPU 是计算机核心部件,它的主要功能是完成算术和逻辑运算操作; B、根据系统总线传送信息的类型不同,它可分为地址线、数据线和控制线。 C、 在指令字中,除给出指令的操作码外,还必须给出操作的对象。 D、 显示器是构成计算机显示系统的硬件部件。

7、 高级语言中,程序控制一般分为三种基本结构,其中_____结构可提供作条路径选择。 A、循环 B、分支 C、递归 D、过程

8、在子程序的程序头,一般要写出一些变量,这些变量被称为_____ A、形式参数 B、实际参数 C、局部参数 D、全局参数 10、当选定文件或文件夹,不将文件或文件夹放到“回收站”中,直接删除的操作是 _____ A、 按 Delete(Del)键 B、 用鼠标直接将文件或文件夹拖放到“回收站”中 C、 按 Shift + Delete (Del)键 D、 用“我的电脑”或“资源管理器”窗口中的“文件”菜单中的删除命令 12、与二进制 1110111.111 对应的十六进制数是_____ A、77.E B、77.7 C、E7.E D、E7.7

13、URL 的一般格式为_____ A、/<路径>/<文件名>/<主机> C、<通信协议>:/<主机>/<文件名> B、<通信协议>://<主机>/<路径>/<文件名> D、//<主机>/<路径>/<文件名>:<通信协议>

14、_____是实现两个异种网络互连的设备。 A、网桥 B、网关 C、集线器 D、路由器

15、_____可能把模拟声音信号转换成数字声音信号。 A、A/D B、D/A C、R/W D、I/O

16、现有十六进制数 x、 y,它们的值分别是 x=BD,y=9D,则表达式 x*y 的值为_____ A、73E9 B、50ED C、7E00 D、CE11 )形式进行的。

1、在计算机内部用来传送、存贮、加工处理的数据或指令(命令)都是以( A、二进制码 B、八进制码 C、十进制码 ) B、高级软件和一般软件 D、智能拼音码 2、计算机的软件系统通常分为( A、硬件系统和软件系统 D、军用软件和民用软件 3、关于软盘读写孔,正确的说法是( A.从该孔读信息 B.从该孔写信息 C.当该孔处于开状态时,不能删除盘中文件。 D.该孔没有作用 8、为了区分汉字与 ASCII 码,计算机中汉字编码的最高位为( A、1 B、0 C、-1 ) 。 D、2 5、下列叙述中错误的是( ) ) 。

C、系统软件和应用软件

A.微型计算机应避免置于强磁场之中 B.微型计算机使用时间不宜过长,而应隔几个小时关机一次 C.微型计算机应避免频繁关开,以延长其使用寿命 D.计算机应经常使用,不宜长期闲置不用

6、计算机网络最主要的优点是( A、运算速度快 B、共享资源

) 。 C、精度高 D、存储容量大 ) D、(DC.1)
16

7、下列 4 个不同进制表示的数中,最大的一个数是( A、(220.1) 10 B、(11011011.1) 2 C、(334.1) 8

9、下列正确的文件名是() 。 A. command。Com B. command_com C. command,com D. command.com 10、.一般来说,TCP/IP 的 IP 提供的服务是( A.运输层服务 B.会话层服务 C.表示层服务 ) D.网络层服务

11、通信时,模拟信号也可以用数字信道来传输,无法实现模拟信号与数字信号之间转换功能的是 ( A、D/A A、聊天 ) B、A/D C、Modem ) C、查询资料 D、传送能量 D、Codec

13、属于 Internet 的功能是( B、远程教育

14、下列描述计算机病毒的特性中, ( A. 潜伏性. B. 传染性. C.. 高速性 D. 危害性

)是正确的。

16、某计算机的硬盘容量为 40G,这里 40G 容量是( A、40 B、40960MB C、40000MB ) C、NETWARE

)字节。

D、40*1024*1024*1024B

17、下面属于网络操作系统的是( A、UNIX B、WINDOWS

D、DOS ) D、 (5B) 16

18、如果 A 的 ASCII 码为 65,则 Z 的 ASCII 码 为( A、 (90) 10 B、 (132) 8 C、 (1011101) 2

19、对一般的二维数组 G 而言,当( 的 G[I,J]的地址相同。 A、 G 的列数与行数相同。 B、 G 的列的上界与 G 的行的上界相同。 C、 G 的列的下界与行的下界相同。 D、 G 的列的上界与行的下界相同。

)时,其按行存储的 G[I,J]的地址与按列存储

20、根据《计算机软件保护条例》 ,中国公民开发的软件享有权的是(



A、 不论何人、何地及发表与否的软件。 B、 只有公开发表的软件。 C、 只有单位发表的软件。 D、 只有个人在国内公开发表的软件。 1、如果按字长来划分,微型机可以分为 8 位机、16 位机、32 位机和 64 位机。所谓 32 位机是 指该计算机所用的 CPU( ) B、具有 32 位的寄存器 D、有 32 个寄存器 A、同时能处理 32 位二进制数 C、只能处理 32 位二进制定点数 E、存储方式是 32 位 2、下列表达式正确的是( A、 (1) 10 >(1) 2 D、 (101) 2 > (15) 16 A、Ctrl + F4 B、Alt + F4 ) B、 (12) 10 >(10) 16 E、 (121) 10 =(79) 16 ) D、Ctrl+ Esc E、Shift+ Esc C、Alt +Esc ) B、分支结构、等价结构、循环结构 D、分支结构、顺序结构、选择结构 C、 (15) 8 > (10) 16

3、关闭一个活动应用程序窗口,可按快捷键( 4、结构化程序设计的三种结构是(

A、顺序结构、选择结构、转移结构 C、多分结构、赋值结构、等价结构 E、循环结构、顺序结构、选择结构 16、下列软件属于系统软件的是( A、WORD A、 1. 2. 7.04KB ) B、 WINDOWS 98 B 、56.25KB C、

C、DOS 7200B

D、 UNIX

E、FLASH

17、800 个 24×24 点阵汉字字型库所需要的存储容量是??? D、 450KB E、720MB

微机中存储一个 ASCII 码需要() A.一个字节 B. 7 位二进制数 C.二个字节 D. 1 位二进制数 C.计算机的体积 D.计算机的存储容 计算机发展中的分代是以()为依据的。 A. 计算机的运行速度 量 B. 组成计算机电子器件的变化

3. 4. 5.

十进制数 126 转换成二进制数为()。 A.11110 A.0010101 B.1111100 C.111100 D.1111110 D.01101010 二进制数-0.1101010 的补码是() B.10010110 C.10010101 如果一张有 60 分钟的 cd 唱盘,其采样频率为 44.1khz,采样数据为 16 位,双声道,那么它的 容量所占用的存储空间为( ) 。 A.400mb B.600mb C.500mb D.700mb

1、国际信息交换码 ASKII 码的长度为 1 个字节,其中的最高位为 0,因此 ASKII 码表中的符号有 ( )个。 A) 127 B) 128 C) 255 D) 256 E)64 2、一台显示器工作在字符方式,每屏可以显示 80 列×25 行字符,至少需要的显示存储 VRAM 容 量为:_______。 A)16KB B)32KB C)4KB D) 8KB E) 24KB 3、和外存相比,内存的特点是:_________。 A)容量小、速度快、成本高 B)容量小、速度快、成本低 C)容量小、速度慢、成本低 D)容量大、速度快、成本低 E)容量大、速度快、成本高

4、在解决计算机主机与打印机之间速度不匹配时通常设置一个打印数据缓冲区,主机将要输出打印 的数据依次写入该缓冲区,而打印机从该缓冲区中取出数据打印。该缓冲区应该是一个( ) 结构。 A)堆栈 B)队列 C)数组 D)记录 E)线性表 5、磁盘存储器的主要性能参数之一是平均等待时间 ,它与磁盘哪一项性能有关? A) 数据传输速率 B) 磁盘旋转速度 C) 平均寻道时间 D) 磁盘存储容量 E) 磁盘的体积大小 6、在 TCP/IP 协议中,TCP 和 IP 分别提供什么服务( ) 。 A)传输层、网络层 B)链路层、网络层 C)传输层、会话层 D)物理层、链路层 E)传输层、应用层 19.不同的计算机,其指令系统也不同,这主要取决于(). A 所用的操作系统 C.所用的 CPU B. 系统的总体结构 D.所用的程序设计语言

8、将 windows 系统中的窗口和对话框进行比较,窗口可以移动和改变大小,而对话框( ) 。 A) 既不能移动也不能改变大小 B) 可以移动,不能改变大小 C) 可以改变大小,不能移动 D) 既能移动,又能改变大小 E) 有些能移动,有些不能移动,都不能改变大小 13、下面属于结构化程序设计基本特点的是: ( ) A)程序是由三种基本结构组成 B)程序是有各种不同的对象组成 C)一个程序可以分解为多个不同的模块 D)程序执行时是编译一块,执行一块的 E) 采用“自顶向下、逐步求精”的设计方法 18、一下哪些是 internet 上用来收发电子邮件的协议? A)FTP B)POP3 C)HTTP D)POP E)SMTP 19、Linux 操作系统的发展非常迅猛,这与 Linux 具有的良好特性是分不开的。 Linux 包含了 Unix 的全部功能和特性,以下是 linux 的主要特征的有: A) 多用户多任务 B) 开放性、设备独立性 C) 良好的用户界面 D) 提供了丰富的网络功能 E) 可靠的系统安全,良好的可移植性 20、电子商务系统是一个以( ) ( ) 、 、电子数据处理等技术为基础的综合商贸信息处理系统。 A)数据库 B)数据交换 C)信息搜索 D)过程登陆 E) 环球网络 1.到目前为止,电子计算机的工作原理均采用( )的存储程序,并自动完成程序的设计思想。 A 比尔.盖茨 B 冯.诺依曼 C 简.韦伯斯特 D 巴比奇 2.十进制数 130.375 转换成二进制数是( ) 。 A 10011100.1011 A 编辑 A 24 A A A 17、( C B 汇编 B 48 C B B B 11000011.011 C 修改 72 循环结构 256M 字节 C 10000010.011 D10001100.10101 3、把用高级语言编写的源程序变为目标程序,要经过( ) D 编译 D 96 C 回溯结构 C 256M 字 C 6 D 选择结构 ) D 256000K 字 D 5

4、 在 24X24 点阵字库中,存储每个汉字的字形码用( )字节。
5、以下( )不是结构化程序设计规定的基本结构

顺序结构 256M 位

6、在微型计算机中,其内存容量为 256MB,指的是( 7、 具有 65 个结点的完全二叉树其深度为 ( 8 B 7 )合在一起被称为中央处理单元。 A 运算器和存储器 控制器和存储器 D 内存和外存 )

)(根的层次号为 1)

B 运算器和控制器

1、微型计算机的性能主要取决于(

A、内存 2、Windows98 是 A、8 位 D、32 位 A、KB D、TB

B、ROM 位 单 多 B GB MB B 图形 图形 GB KB TB MB

C、CPU 界面的 B、16 位 E、32 位

D、硬盘 图形 字符 GB KB 多 单

E、显示器 ) 字符 单 C、16 位 ) B B C、GB TB KB MB B

任务操作系统 (

3、在衡量存储吕器容量时,计量单位由大到小的顺序是 ( B、TB E、GB MB MB KB TB

20、在 24X24 点阵字库中,存储每个汉字的字形码用( )字节。 A 24 B 48 C 72 D 96 ) E、RAM

6、计算机可执行文件运行时,是在哪种存储器中进行的( A、软盘 B、硬盘 C、高速缓存 ) B、http://21cn.com E、tian@yahoo ) D、0.2 ) C、0.8 C、邮件地址 )的一块区域 C、硬盘 D、内存 D、ROM 7、下面合法的电子邮件地址是( A、tian@163.com D、ftp://tian.nhedu.net A、0.4 A、TCP/IP A、软盘 B、0.5 B、IP 地址 B、光盘

C 、http://yahoo.com.cn

8、与二进制小数 0.1 等值的十六进制小数为( 9、区分网上不同计算机的最有力标识为( 10、在 Windows 中, “粘贴板”是( 1、 下列叙述正确的是____。 A、指令中操作数规定准备执行的功能 C、断开电源后,DRAM 中的内容便会丢失 2、 关于中断请求信号的说法中,正确的是 __ B、中断请求信号有时是由 CPU 发起的

E、0.1 D、用户名 E、IE E、CPU

B、在 16 位计算机中,一个字节由 16 位组成 D、软盘驱动器属于主机,软盘属于外设 _。

A、中断请求信号总是由输入/输出设备发起的 C、中断请求信号是由 CPU 和输入/输出设备同时发起的 D、中断请求信号是自动产生的 3、 下列四项中,不属于计算机病毒特征的是 A、潜伏性 B、 传染性 C、激发性 。 D、 免疫性 。 B、 Alt+单击要选定的文件对象 D、Ctrl+双击要选定的文件对象 。

4、在资源管理器右窗格中,如果需要选定多个非连续排列的文件,应按组合键 A、 Ctrl+单击要选定的文件对象 C、 Shift+单击要选定的文件对象 5、 Windws98 中,下列叙述正确的是 B、Windows 任务栏的大小是不能改变的 C、 “开始”菜单是系统生成的,用户不能再设置它 D、Windows 任务栏可以放在桌面四个边的任意边上 6、 Internet 实现了分布在世界各地的各类网络互联,其最基础和核心的协议是 A、TCP/IP B、FTP C、HTML D、HTTP 7、 二进制数 1110111.11 转换成十六进制数是________。

A、 “开始”菜单只能用鼠标单击“开始”按扭才能打开

A、77.C B、77.3 C、E7.C D、E7.3 8、 能将高级语言编写的源程序转换成目标程序的是______。

A、

编辑程序 B、320B

B、 编译程序 C、 720B

C、 解释程序 D、 72KB C、 分辩率 C、 键盘

D、 链接程序

9、 要存放 10 个 24×24 点阵的汉字字模,需要 存储空间 A、 74B 10、下列各指标中, 是数据通信系统的主要技术指标之一 A、 重码率 A、 显示器 B、 传输速率 B、 磁盘驱动器 D、 时钟主频 。 。 D、 图形扫描仪 11、 在计算机中,既可作为输入设备又可作为输出设备的是

12、在微机的配置中常看到 "处理器 PentiumIII/667"字样,其数字 667 表示 A、 处理器的时钟主频是 667MHZ B、 处理器的运算速度是 667MIPS C、 处理器的产品设计系列号是第 667 号 D、 处理器与内存间的数据交换速率是 667KB/s

17、局域网是在局部地区内传送信息并实现资源共 享的计算机网络,因此它不能 __________。 A、连接几十公里外的用户 C、连接外部设备或不同型号的计算机 B、使用光纤作为传输媒介 D、与大型计算机连接

18、 DOS 系统的热启动与冷启动的不同之处为热启动时

A、不检测键盘。外设接口与内存 B、不提示用户输入时期与时间 C、不用装入 COMMAND.COM 文件 D、不能从软盘启动 10.字母在计算机中是以编码形式表示的,通用的编码是 ASCII 码,字母‘A’的 ASCII 码是 65,字母‘E’的 ASCII 码是________。 A.05 B.52 C.69 D.68 E. 15 11.结构化程序的结构由三种基本结构组成,下面哪个不属于这三种基本结构? A.顺序结构 B.输入输出结构 C.分支结构 D.循环结构 E.文件结构 12.下列中合法的 PASCAL 标识符是__________ A.A1B2C3 B.FOR C.2AB D.A[1] E._AB 13.关于 Windows 95 中"开始"菜单中的"运行"项,错误的是_________ A.可以运行 DOS 的全部命令 B.仅可以运行 DOS 的内部俞令 C.可以运行 DOS 的外部命令和可执行文件 D.仅可以运行 DOS 的外部命令 E.只能运行 DOS 的部分外部命令 14.PASCAL 编译程序的功能是_________。 A.把 PASCAL 源程序转换成可运行的 EXE 文件 B.生成和修改一个 PASCAL 源程序 C.实现 PASCAL 的目标代码到可运行的 EXE 文件的转换 D.实现 PASCAL 的源程序到等价的目标码程序的转换 E.把可运行的 EXE 文件转换成 PASCAL 源程序 15.磁盘存储器的数据存取速度与下列哪一组性能参数有关? A. 平均等待时间,磁盘旋转速度,数据传输速率 B. 平均寻道时间,平均等待时间,数据传输速率 C. 数据传输速率,磁盘存储密度,平均等待时间 D. 磁盘存储器容量,数据传输速率,平均等待时间 E. 平均等待时间,磁盘旋转时间,磁盘存储器容量 16.下面是关于 Windows 95 文件名的叙述,错误的是 A.文件名中允许使用汉字

B.文件名中允许使用多个圆点分隔符 C.文件名中允许使用空格 D.文件名中允许使用竖线("|") E.文件名种允许使用”*”号 17.下面有关计算机操作系统的叙述中,不正确的是 A. 操作系统属于系统软件 B. 操作系统只负责管理内存储器,而不管理外存储器 C. UNIX 是一种操作系统 D. 计算机的处理器、内存等硬件资源也由操作系统管理 E.网络资源由操作系统管理 18.下列 IP 地址中正确的是_________。 A.202.300.12.4 B.192.168.0.3 C.100:128:35:91 D.111 -102 -35 -21 E. 10.7.5.3 19.下列中错误的 PASCAL 表达式是__________。 A. 10e6*3.7 B. 17 DIV 3 C. 18 DIV 3*4.0 D. 4.018 DIV 3 E.(1+2)MOD 2*3 20. 下列选项中,属于计算机病毒特征的是___________. A. 破坏性 B. 潜伏性 C. 传染性 D. 免疫性 E.寄生性 1.组建计算机网络的目的是为了能够相互共享资源,这里的计算机资源主要是指硬件、软件与 ___________。 A. 大型机 B. 通信系统 C. 服务器 D. 数据 E.软件 2. (101.101)2=(______)10 A.5.625 B.5.5 C.3.525 D.5.4 E.5.2 3.对于一个 24*24 的汉字点阵来说,一个汉字所占存储量为_______个字节。 A.11 B.72 C.13 D.14 E. 36 4.连接到 Internet 上的每台计算机都必须有一个_______地址,该地址共______个字节。前面 若干字节表示______;后面若干字节表示_______。为了避免使用数字,人们经常用字母代 替,这些名字称为________。 A.IP、四、网络地址、计算机地址、网名 B.网络、四、IP 地址、网内计算机地址、域名 C.网络、不超过十、网页、网址、网名 D.IP、四、网络地址、网内计算机地址、域名 E.域名、八、网络地址、网内计算机地址、网名

二 、 填 空 题 : 共 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,x:integer; ____。

PROEDURE silly(x:integer;VAR y:integer); BEGIN x:=5;y:=6;z:=3; writeln(x,y,z) END; BEGIN x:=1;y:=2;z:=3; silly(x,y); writeln(x,y,z) END. 输出结果为:

2、有下面程序段 FOR I:=1 TO 3 DO BEGIN FOR J:=1 TO 3 DO BEGIN IF I=3 THEN A[I,J]:=A[I-1,A[I-1,J]]+1 ELSE A[I,J]=J; WRITE(A[I,J]:2) END; WRITELN END 该程序的执行结果是:

3、PROGRAM TEST(INPUT,OUTPUT); VAR A,B,C:INTEGER; PROCEDURE P(VAR X:INTEGER;Y:INTEGER); VAR M,N:INTEGER; BEGIN M:=X*Y; X:=X+5; Y:=Y+5; N:=X*Y; WRITELN(M:4,N:4) END; BEGIN A:=3;B:=3; P(A,B); P(A,B) END 运行结果为:

4、PROGRAM EXAM(INPUT,OUTPUT); VAR A:ARRAY[1..6] OF INTEGER; I,J,K:INTEGER; BEGIN FOR I:=1 TO 6 DO READ(A[I]); READLN; FOR I:=1 TO 6 DO BEGIN IF I=1 THEN K:=1 ELSE K:=8-I; FOR J:=1 TO 6 DO BEGIN WRITE(A[K]:2); IF K=6 THEN K:=1 ELSE K:=K+1; END; WRITELN END END 输入:8 1 4 2 5 6 输出结果为:

四、 程序完善题: 共 2 题, 每题 14 分 ,共计 28 分 。
1、 对给定的 10 个国家名,按其字母的顺序输出。

程序如下: program ex8_3; var i,j,k:integer; t:string[20]; cname:array[1..10] of string[20]; begin for i:=1 to 10 do readln(cname[i]); for i:=1 to 9 do begin (1) ; for j:=i+1 to 10 do if cname[k]>cname[j] then (2); (3); cname[i]:=cname[k];cname[k]:=t; end; for i:=1 to 10 do writeln(cname[i]);

end. 2、编制用筛法求 1-n(n≤200)以内素数的程序。 分析: 由希腊著名数学家埃拉托色尼提出的所谓“筛法”,步骤如下: ①将所有候选数放入筛中; ②找筛中最小数(必为素数)next,放入集合 primes 中; ③将 next 的所有倍数从筛中筛去; ④重复②~④直到筛空。 编程时,用集合变量 sieve 表示筛子,用集合 primes 存放所有素数。 源程序如下: program ex10_3; const n=200; var sieve,primes:set of 2..n; next,j:integer; begin sieve:=[2..n];{将所有候选数放入筛中} primes:=[];{素数集合置空} next:=2; repeat {找筛 sieve 中最小一个数} while not(next in sieve) and(next<=n)do next:=succ(next); (4) j:=next; while j<=n do begin (5) end until sieve=[]; j:=0; for next:=2 to n do{打印出所有素数} if next in primes then begin write(next:5); (7) end; writeln; end. ; if j mod 10=0 then writeln; ; (6) ; ;{将最小数放入素数集合中 } {将这个素数的倍数从筛中删去}

信息学奥林匹克联赛模拟试题(初赛)答案(普及组) 南海桂城桂江一中 欧伟礼

(本试题全部为笔试,满分 100 分) 试题由四部分组成:1、选择题 2、问题求解题 3、程序阅读理解题 4、程序完善题 一、选择题:共 20 题,每题 1.5 分,共计 30 分。每题有 5 个备选答案,前 10 个题为单选题(即每 题有且只有一个正确答案,选对得分),后 10 题为不定项选择题(即每题有 1 至 5 个正确答案,只 有全部选对才得分)。 1、B 11、ABCE 16、ACD 2、D、 17、D 3、B 18、ABCD 4、D 13、ABCDE 5、D 14、BCD 6、C 15、CD 7、D 8、C 9、B 10、C 12、ABCD

19、ABD

20、AD

二、填空题:共 2 题,第一题 5 分,第二题 5 分,共计 10 分。 1、1232525610 1、输出结果为:5 1 1 2 3 2 3、运行结果为:9 24 4、 输入:8 6 5 2 4 1 1、 6 5 2 4 8 6 5 2 1 8 6 5 4 1 8 6 1 1 8 2 4 1 8 (2)k:=j; (3) t:=cname[i]; (5)sieve:=sieve-[j]; (6)j:=j+next; (7)j:=j+1; 输出结果为:8 4 4 1 64 104 2 2 4 5 5 2 6 6 5 3 4 6 6 7 2 3 2、星期一 7 三、程序阅读理解题:共 4 题,每题 8 分,共计 32 分。

2、该程序的执行结果是:1

四、程序完善题:共 2 题,每题 14 分,共计 28 分。 (1)k:=i; 2、(4)primes:=primes+[next];

南海区信息学竞赛初赛模拟试题
(初中组 PASCAL 语言,两小时完成) ◆请将正确答案在答卷上填写,在本试题卷上答题无效◆◆ 二、问题求解:(每题 5 分,共 10 分) 21、帽子是谁拿走的? 帽子的故事把俱乐部的一个早晨搅得很热闹,把管理员马开年搞得很头痛。俱乐部有四 个会员汤恒、项德铭、皮洛生和理查德都向马开年抱怨丢了帽子,但这四个人当中没有 一个肯为拿错别人的帽子而表示歉意,真正好笑的是项德铭和皮洛生两人,虽然都没有 错拿对方的帽子,但却相互指责对方公然行窃。下面有一些线索,请你根据这些线索这 四个人谁拿走了谁的帽子:

理查德拿走了那个未曾拿走理查德的人的帽子,而那个人又拿走头天晚上第一个离开俱 乐部的那人的帽子,汤恒拿走了某人的帽子,而这个又拿走了那个拿了项德铭的帽子的 人的帽子。 答:汤恒拿走了 的帽子;项德铭拿走了 的帽子;皮洛生拿 走了 的帽子;理查德拿走了 的帽子。 22、有一群蜜蜂,其半数的平方根飞向茉莉花丛, 9 分之 8 留在家里,还有一只去寻找 在花瓣里嗡嗡叫的雄蜂,这只雄蜂被花香所吸引,傍晚时由于花瓣合拢而飞不出去了。 请问,蜂群中有多少只蜜蜂? 答:蜂群中有 只蜜蜂。 三、阅读程序,写出程序运行的结果:(每题 6 分,共 24 分) 23、 PROGRAM myt23(input,output); VAR a,b,c : integer; PROCEDURE p(VAR x:integer; y:integer); VAR temp:integer; BEGIN temp:=x DIV y+c; x:=temp; WRITELN(x:4,y:4,temp:4) END; BEGIN a:=9;b:=2;c:=3; p(a,b); WRITELN(a:4,b:4,c:4) END. 程序运行的结果是: 24、 PROGRAM myt24; VAR s:INTEGER; ch:CHAR; count:ARRAY['A'..'Z'] OF INTEGER; BEGIN FOR ch:='A'TO 'Z' DO count[ch]:=0; READ(ch); WHILE NOT EOLN DO BEGIN IF (ch>='A') AND (ch<='Z') THEN count[ch]:=count[ch]+1; READ(ch) END;

s:=0; FOR ch:='B' TO 'Y' DO s:=s+count[ch]; WRITELN(s) END. 运行程序,输入一行正文'WE ARE PROUD OF OUR COUNTRY!'则程序的输出是: 25、 PROGRAM myt25(INPUT,OUTPUT); VAR I,j:integer; a,b:ARRAY[1..5] OF integer; BEGIN FOR i:=1 TO 5 DO BEGIN a[i]:=2*i-1; b[i]:=i END; FOR i:=1 TO 5 DO FOR j:=1 TO 5 DO IF a[i]=b[j] THEN WRITE(a[i]:4) END. 程序运行的结果是: 26、 PROGRAM myt26(INPUT,OUTPUT); VAR a:ARRAY[1..6] OF INTEGER; i,j,k:INTEGER; BEGIN FOR i:=1 TO 6 DO READ(a[i]); READLN; FOR i:=1 TO 6 DO BEGIN IF i=1 THEN k:=1 ELSE k:=8-i; FOR j:=1 TO 6 DO BEGIN WRITELN(a[k]:2); IF k=6 THEN k:=1 ELSE INC(k); END; WRITELN;

END; END. 程序运行时,从键盘输入六个数:8 1 4 2 5 6(每两个数之间有一个空格) 则程序运行的结果是: 8 1 4 2 5 6 6 8 1 4 2 5 5 6 8 1 4 2 2 5 6 8 1 4 4 2 5 6 8 1 1 4 2 5 6 8 四、完善程序:(每空 3 分,共 36 分) 27、【问题描述】会绕圈的四位数:任意选择一个四位数,把它的每一位上的数字都平 方,再相加得到另一个数;将这个数的每一位上的数字再平方,再将平方和相加;??; 依次类推,那么这些所产生的一系列数字中将会有一个子序列会产生循环现象,下面的 程序就是对这一现象进行验证。 PROGRAM myt27; CONST num=100; VAR I,j,x,a,b,c,d,z:INTEGER; m:ARRAY[1..num] OF INTEGER; f:INTEGER; BEGIN WRITELN; i:=1;
WRITE('Please input x='); READ(x); WRITE(x); m[i]:=x; for f:=1 to num do begin a:=(1) b:=(2) c:=(3) d:=(4) z:=a*a+b*b+c*c+d*d; write('->',z); for j:=1 to i do begin if (5) begin j:=i; f:=num; end; end; i:=i+1; then ; ; ; ;

(6) x:=z; end; end.

;

28、【问题描述】在下列程序中,当输入一个定的数 n 后,能输出所有不超过 n 的,其平 方由左右对称(1 位数也认为是左右对称)的数字组成的数。例如:若输入 23,则应输出:1,2,3, 11,22,因为它们的平方依次是: 1,4,9,121,484,都是左右对称的数字组成的数。 PROGRAM myt28; CONST max=1000; VAR m,n,i,j,s:INTEGER; d:ARRAY[0..max] OF INTEGER; BEGIN READLN(n); FOR m:=1 TO n DO BEGIN (1) j:=0; while BEGIN j:=j+1; d[j]:=(2) s:=(3) END; i:=1; while ((4) BEGIN i:=i+1; j:=j-1; END; IF (6) END; END. THEN WRITELN(m); ) and (5) ) DO ; ; s>0 DO ;

二、问题解答: (每小题 5 分,共 10 分)
1.求从 1 至 1000 的整数中能被 14 或 21 整除的整数的个数是 2.一次宴会,7 位来宾寄存他们的帽子,在取回他们的帽子时,问 (1) 没有一位来宾取回的是他们自己的帽子? (2) 至少有一位来宾取回的是他自己的帽子? (3) 至少有两位来宾取回的是他们自己的帽子? 。 种可能使得

二、问题解答: (每空 2 分,共计 10 分)
1、日历上的“54”:不要误会,这并不是措“五四”青年节,而是要你寻找连续 3 个日子,其 号数相加等于“54” 。如果你已经找到了答案,再拭看哪 4 个连续日子相加也等于“ 54”呢? 2、校庆“三十五” :校庆 35 周年了,为了庆祝这个日子,4 个同学用 35 这个数做游戏,游戏 的要求是:只能用 5 这个数字,或者只用 7 这个数字组成一个式子,其结果等于 35。甲和乙分别 用 4 个 5 和 4 个 7 组成 35,其式子如下: 甲:5×5+5+5=35 乙:7×7-7-7=35 另两个同学丙和丁分别用 5 个 5 和 5 个 7 组成 35。你知道他们是怎么列的式子? 2、221221221221÷136136136136=?

三、 程序阅读理解 题,写运 行结果 (每小题 8 分,共 32 分)
1. PROGRAM T1 (INPUT,OUTPUT); VAR A:ARRAY[1..5,1..5] OF INTEGER; I,J,N:INTEGER; BEGIN FOR I:=1 TO 5 DO BEGIN N:=1; FOR J:=1 TO 6-1 DO BEGIN A[I,J]:=N; N:=N+1; END; N:=1; FOR J:=7-1 TO 5 DO BEGIN A[I,J]:=N; N:=N+1; END; END; FOR I:=1 TO 5 DO BEGIN FOR J:=1 TO 5 DO WRITE(A[I,J]:3); WRITELN; END; END. 2. PROGRAM T2 (INPUT,OUTPUT); VAR A,N,I:INTEGER; X:REAL;

BEGIN WRITE(‘Please input A,N=’); READLN(A,N); X:=1; FOR I:=1 TO N DO BEGIN X:=1+(A-1)/(1+X); X:=X; END; WRITELN(X:10:6); END. 输入数值:5、10,输出 3. PROGRAM T3 (INPRUT,OUTPUT);

VAR A,B,C,D:INTEGER; PROCEDURE SUBPROGRAM(A:INTEGER;VAR B:INTEGER); VAR C:INTEGER; BEGIN A:=A+1; B:=B+1; C:=2; D:=D+1; WRITELN(‘M’,A,B,C,D); IF A<3 THEN SUBPROGRAM(A,B); WRITELN(‘N’,A,B,C,D); END; BEGIN A:=1;B:=A; C:=B;D:=C; WRITELN(‘X’,A,B,C,D); SUBPROGRAM(A,B); WRITELN(‘Y’,A,B,C,D); END. 4.PROGRAM T4(INPUT,OUTPUT); VAR BUF:SET OF 0..15; I,K:INTEGER; BEGIN READLN(K); BUF:=[];I:=0; WHILE (K<>0) AND (K<>1) DO BEGIN IF ODD(K) THEN BEGIN BUF:=BUF+[I];I:=I+1 END ELSE I:=I+1; K:=K DIV 2;

END; IF K=1 THEN BUF:=BUF+[I]; IF I IN BUF THEN WRITE(‘1’) ELSE WRITE(‘0’); END. 输入 18,输出 输入 66,输出 FOR I:=15 DOWNTO 0 DO

四、完善程序 (每空 2 分,共 28 分)
1. 输入一串字符,其字符个数<100,且最后以“ . ”结束。判断它们是否构成回文。 所谓回文是指从左到右和从右到左读该串字符的值是一样的。如“12321” “我看你看我” , 。 PROGRAM T5(INPUT,OUTPUT); VAR LETTER:ARRAY[1..100] OF CHAR; I,J:0..100; CH:CHAR; BEGIN I:=0; ① REPEAT I:=I+1; ② READ(CH) UNTIL CH=’.’; J:=1; WHILE (J<I) AND (LETTER[J]=LETTER[I]) DO BEGIN ③ ④ END; IF ELSE WRITELN(‘字符串不是回文’) END. 2.子集和数问题:假定有 N(N<=20)个不同的正整数(通常称为权) ,要求找出这 些数 中所有使得其和为 M 的组合。 例如,有 4 个不同的正整数 11、13、24、7,那么 11、13、7 和 24、7 就是和为 31 的所有组合。 PROGRAM T6 (INPUT,OUTPUT); CONST ALLNUM=20; VAR A,S:ARRAY[1..ALLNUM] OR INTEGER; N,SUM,I,J,SP,T,TOTAL:INTEGER; ⑤ THEN WRITELN(‘字符串是回 文’) ; ; ; WHILE CH=’ ’ DO READ(CH);

FINISH:BOOLEAN; PROCEDURE PRINT; VAR K:INTEGER; BEGIN WRITE(SUM:3,’=’,A[S[1]]:2); FOR K:=2 TO SP DO WRITE(‘+’,A[S[K]]:2); WRITELN; ① END; BEGIN READLN(N); WHILE (N<=0) OR (N>20) DO READLN(N); READLN(SUM); FOR J:=1 TO N DO READLN(A[J]); TOTAL:=0; FOR J:=1 TO N DO BEGIN ② T:=SUM; I:=J; FINISH:=FALSE; REPEAT IF T>=A[I] THEN BEGIN SP:=SP+1; ③ IF END; I:=I+1; WHILE BEGIN IF T=0 THEN PRINT; ⑥ I:=S[SP]+1; SP:=SP-1 END; ELSE BEGIN FINISH:=TRUE; I:=1 ; ⑤ DO IF SP>1 THEN ; T:=T-A[I]; ④ THEN I:=N; ; ;

END; UNTIL END; WRITELN(‘TOTAL:’,TOTAL) END. ⑦

二、问题解答: (每空 2 分,共计 10 分)
1、 "我买鸡蛋时,付给杂货店老板 12 美分,"一位厨师说道,"但是由于嫌它们太小,我又叫他无 偿添加了 2 只鸡蛋给我。 这样一来, 每打 (12 只)鸡蛋的价钱就比当初的要价降低了 1 美分。 厨 " 师买了多少只鸡蛋? 2、 我 活 到 现 在 这 么 多 年,其 中 六 分 之 一 是 在 乡下老 家 过 的 童 年 , "老 板说, "十 二 分 之 一 花 在 纽约 的 酒 类 生 意 上 , 五 又 七分 之 一 投 入 政 界 并 忙 于结 婚 。 这 样 就 生 下 了 吉米 。 四 年 前 他 被 选 为市参 议员,当时他的年龄只有我现在年龄的一半。"老板有多大年纪了? 3、汤米、威利、玛吉和安妮用 20 美分买了 20 粒糖果,已知每粒牛奶软糖值 4 美分,橡皮口香糖 1 美分可买 4 粒,巧克力糖 1 美分可买 2 粒。试问:孩子们买了多少粒各色糖果 ? (林丽梅)

一、 问题解答: (每空2分,共计10分) a) 在我饲养的动物中,除了两只以外所有的动物都是狗,除了两只以外,所有的都是猫, 除了两只以外所有的都是鹦鹉,我总共养了多少只动物?每种动物各几只?

2. 图中的两只母鸡正在盘算着,要使每行(包括 斜线)中的鸡蛋不超过两只,它们能在这蛋格子里下多 图中,已有两只蛋下好了,因而不能 再在这条对角线上 并请画出图例。

横、竖和 少蛋?在 下蛋了。

3. 哈里与吉姆是打弹子游戏的两位竞争对手。 游戏开始时他们都有着同样数目的弹子。 哈里在第一轮中蠃到了 20 粒弹子,但后来暴露出弱点,败下阵来,输掉了手中弹子的三 分之二。结果使吉姆所拥有的弹子数是哈里的四倍。 试问:开始玩游戏时,每个孩子手 上有多少弹子?

(吴绮霞)

二、问题求解 1、一个口袋装有红、蓝、白三种不同颜色的小球,其中蓝球数至少是白球数的一半,但 至多是红球数的 1/3,蓝球的总和至少是 55 个,则红球至少有_____个。 2、13=1 23=3+5 33=7+9+11 43=13+15+17+19 若将每一个式中的最小奇数称为 X,那么当给出 n 之后,请写出 X 与 n 之间的关系表达 式:_______________。 三、写出运行结果
1、Program ex1; var x, y ,y1, jk, j1, g, e : Integer; a : array [1..20] of 0..9; begin x:=3465; y:=264; jk:=20; for j1:=1 to 20 do a[j1]:=0; while y<>0 do begin y1:=y mod 10; y:=y div 10; while y1<>0 do begin g:=x; for e:=jk downto 1 do begin g:=g+a[e]; a[e]:=g div 10 end; y1:=y1-1; jk:=jk-1; end; j1:=1; while a[j1]=0 do j1:=j1+1; for jk:=j1 to 20 do write(a[jk]:4); writeln; end. 2、program ex2; var i,j,k,m:char;

begin repeat readln(m); m:=upcase(m); until (m>='A') and (m<='Z'); for i:='A' to m do begin write(' ':(ord(m)-ord(i))+1); for j:='A' to i do write(j); for j:=pred(i) downto 'A' do else writeln; end; end. 输入:D 四、完善程序 1、求两个正整数的最大公约数 program var ex3; begin writeln('input m,n'); readln(m,n); if (n<=0) or (m<=0) then begin writeln('error!'); halt;end; if ___①___ then begin __②___; m:=n; n:=t; end; _____③___; while r<>0 do begin m:=n; n:=r; ___④_____; end; writeln('yu shu:',n); end. m,n,r,t:integer; write(j); if (ord(i)-64) mod 25=0 then readln

2、由数组成的图案 如 N=5 则有: 1 2 4 7 1 3 5 8 2

6 9 3 0 4 5 program ex4; var i,j,n:word; o,m,k,l:integer; begin k:=-1; l:=1; m:=0; o:=1; write('N='); readln(n); for i:=1 to n do begin write(' ':i*3); for j:=i to n do begin _____①_____; l:=____②___; write(l:3); end; m:=m+1; k:=m-1; o:=__③____; l:=o; writeln; end; end.

二、 a)

问题解答: (共 2 题,每题 5 分,共 10 分)
光明中学开设数学、英语和信息学三个兴趣学习小组,其中数学小组 30 人,英语小组 15 人,信息学小组 18 人,参加三个小组总人数为 50 人,其中有 3 人同时参加 3 个小组,那 么同时只参加两个小组的同学有多少人?

b)

给出一组顶点(顶点值用 A,B,C,D,E,F 表示) ,其对应权值分别为 2,3,1,7,8, 4。请以 A,B,C,D,E,F 为叶子顶点构造一棵哈夫曼树,并求出它的最小带权路径长 度 WPL 的值。

三、

写出 程序的运行结 果 (共 4 题,每题 8 分,共 32 分)

第 1 题: program test1; var n:integer; function count(n: integer):integer; begin if n=1 then count:=0 else if n mod 2=0 then count:=count(n div 2)+1 else count:=count(n*3+1)+1; end;

begin readln(n); writeln(count(n)); end. 输入:99 输出: 第 2 题: program test2(input,output); var i,j,k,s:integer; begin s:=0 for i:=3 downto 1 do begin for j:=1 to 3 do begin k:=0; repeat k:=k+1;s:=s+k; until k=j; end; s:=s-(k+1); end; write(‘s=’,s); end. 输出: 第 3 题: program test3; var a,b,n:longint; begin readln(n); a:=0;b:=0; repeat a:=a+1;b:=b+a; until b>=n; writeln(a); end. 输入:415377 输出: program test4; var m,n,i,p,k:integer; r:array[1?200] of integer; b:Boolean; begin m:=6;n:=2;

for I:=1 to m-1 do r[i]:=i+1; r[m]:=1;i:=0;p:=1;b:=true; while b do begin i:=i+1;k:=p;p:=r[p]; if k=p then begin writeln(p);b:=false end else if i=n+1 then begin write(p,‘ end end end. 输出: ’);i:=0;p:=r[p];r[k]:=p;

四、完善程序 (共 2 题,每题 14 分,共 28 分)
第 1 题(7 分) 【问题描述】 设有 n 种物品,每种物品有一个重量及一个价值。但每种物品的数量是无限的,同时有一个背 包,最大载重量为 XK,今从 n 种物品中选取若干件(同一种物品可以多次选取) ,使其重量的和小 于等于 XK,而价值的和为最大。 【程序清单】 Program package; const maxxk=400;maxn=20; type tlist=array[1? maxn] of byte; tmake=array[0? maxn,0?maxxk] of integer; var n,xk:integer; w,u:tlist; f:tmake; procedure init; var i:byte; begin fillchar(w,sizeof(w),0); fillchar(u,sizeof(u),0); readln(n,xk); for i:=1 to n do ① end; procedure make; var i,j:byte; begin for i:=1 to n do begin for j:=1 to w[i]-1 do f[i,j]:=f[i-1,j]; ;

for j:=w[i] to xk do if f[i-1,j]>f[i,j-w[i]]+u[i] then else end; end; procedure print; var get:tlist; i,j:byte; begin fillchar(get,sizeof(get),0); i:= while i>0 do if f[i,j]=f[i-1,j] then dec(i) else begin dec(j,w[i]); ⑥ end; writeln(‘n=’,n, ‘,’, ‘xk=’,xk); writeln(‘max worth=’, for i:=1 to n do writeln(‘no.’,i‘, weight:’,w[i]:2, ‘worth:’,u[i]:2, ‘get’,get[i]:2); end; begin init; make; print; end. ⑦ ); ; ④ ;j:= ⑤ ; ② ③ ; ;

第 2 题(7 分) 【问题描述】 给定一个 01 串,请你找出长度介于 a,b 之间,重复出现次数最多的 01 串。 输入:a,b(0<a<=b<=12) 由 0,1 组合的数列,由‘.’结尾。 输出:要求的串。 提示:本程序中将 01 序列转换为 2 进制数存取。 【程序清单】 program shuchuan; var i,j,s,k,a,b,max:integer; m:array[1?8192] of integer; two,v:array[1?20] of integer; c:char; begin for i:=1 to 13 do ① ;

readln(a,b); read(c); s:=1;k:=1; while c<>‘.’do begin s:=s shl 1+ord(c)-48; if inc(m[s]); if k<b then for i:=a to k-1 do ③ inc(k); read(c); end; for i:=two[b] to two[b+1] do if m[i]>0 then for j:=a to b-1 do m[(i mod two[j])+two[j]]:= max:=0; for i:=two[a] to two[b+1] do if m[i]>max then for i:=two[a] to two[b+1] do if m[i]=max then begin j:=0;k:=I; repeat inc(j);v[j]:=k mod 2; until writeln; end; end. 赖春华 二、问题求解:(第 1 小题 5 分,第 2-3 小题各 4 分,共 13 分) [问题 1]: 在所有三位数中,各位数字从高位到低位顺次减小的数共有 [问题 2]:"银条" 一位银矿勘探员无力预付 3 月份的房租。他有一根长 31 英寸的纯银条,因此他和女房东达成如 下协议。他说,他将把银条切成小段。3 月份的第一天,他给女房东 1 英寸长的一段,然后每天给 她增加 1 英寸,以此作为抵押。勘探员预期到 3 月份的最后一天,他能全数付清租金,而届时女房 东将把银条小段全部还给他。3 月份有 31 天,一种办法是把银条切成 31 段,每段长 1 英寸。可是 这处花很多功夫。勘探员希望既履行协议,又能使银条的分段数目尽量减少。例如,他可以第一天 给女房东 1 英寸的一段,第二天再给 1 英寸的一段,第三开他取回这两段 1 英寸的而给她 3 英寸的 一段。假设银条的各段是按照这种方式来回倒换的话,勘探员至少需要把他的银条切成 ______段? 个。 ⑦ ; ⑥ ; ⑤ ; ④ ; ; ② then s:=((s-two[b+1]) mod two[b])+two[b];

while j>0 do begin write(v[j]);dec(j) end;

[问题 3]:"换不开的钞票" 钱柜里有 1.15 美分,一位顾客提出:把 1 美元的钞票换成硬币,但出纳小姐说换不开,后来 这位顾客提出:把 50 美分的钞票换成硬币,但出纳小姐又说换不开,而实际上,出纳小姐也无法把 25 美分、10 美分、5 美分的钞票换成硬币。请问钱柜里到底有哪些硬币?他们分别有多少枚? 答:_________________。 三、写出程序的运行结果:(每小题 6 分,共 30 分) 1. program text1; const n=6;m=3; var i,j,k:integer; begin for i:=-n to n do begin k:=n-abs(i); write(' ': 39-k); for j:=-k to k do if abs(j)>k-m then write(n-(i+n)div 2) else write(' '); writeln; end; end. 输出的结果为: 2. PROGAM text2; VAR a:ARRAY[1..10] OF Char; k:Integer; ch:Char; BEGIN FOR k:=1 TO 10 DO a[k]:=Chr(Ord('A')+k); FOR k:=1 TO 10 DO BEGIN ch:=a[k]; a[k]:=a[11-k]; a[11-k]:=ch; END; FOR k:=1 TO 10 DO Write(a[k]); Writeln END. 输出的结果为: 3. program text3(input,output);

var m,n,p:integer; x:real; procedure mm(var m:integer;x:real); var n:integer; begin m:=m+1; n:=m+1; x:=n*3; p:=n; end; begin m:=8;n:=5;p:=3;x:=1.0; mm(n,x); writeln (m:5,n:5,p:5,x:6:1); end. 输出的结果为:

4. program text4; const n=5; type ary=array[0..n-1,0..n-1]of integer; var a:ary;i,j,k:integer; begin for i:=0 to n-1 do for j:=0 to n-1 do a[i,j]:=0; k:=1; for i:=1 to n do for j:=n-1 downto i do begin a[j,j-i]:=k; k:=k+1; end; for i:=0 to n-1 do begin for j:=0 to n-1 do write(a[I,j]:4); writeln; end; end. 输出的结果为:

5.program text5(input,output); var ch:char; i,n,sum:integer; begin sum:=0; read(ch); case ch of 'A':for i:=4 to 6 do begin read(n): sum:=sum+n end; 'B':begin read(n); for i:=1 to n do begin read(n);sum:=sum+n end; end; 'C':repeat read(n);sum:=sum+n until sum>10; 'D':begin read(n); while n<=3 do begin sum:=sum+n;read(n) end end end; end. 当程序运行 输入 A 4 1 4 4 4 2 1 1 1 3 2 2 2 4 3 3 3 5 4 4 4 6 5 5 5 7 6 6 6 8 7 7 7 9 时,其输出为_____________。 8 8 8 9 时,其输出为_____________。 9 时,其输出为_____________。 9 时,其输出为_____________。 (2) 输入 B (3) 输入 C (4) 输入 D writeln(sum:4)

四、完善程序(第 1 题每空 2 分第 2、3 题每空 3 分,共 32 分)
第1题 孪生素数是指两个相差为 2 的素数,例如:3 和 5,5 和 7,11 和 13 等。 下面程序可输出 15 对孪生素数,其中函数 q 判断整数 a 是否为素数。 program p(output); var k,n:integer function q (a:integer):booklean; var k:integer; flag:boolean; begin flag:___(1)____

k:=2 ___(2)____ (k<=a div 2) and flag do if a mod k=0 then ______(3)_______ else k:=k+1 q:=flag end; begin n:=0; k:=2; repeat if q(k) and ___(4)___ then begin n:=n+1; writeln(k,k+2) end; k:=K+1 until n=5 end. 第二题 已知有类型 arr=array[1..16] of string; arr 型数组 a 中存放着从第 1 届到第 16 届足球世界 杯冠军国家的名字,下面的函数可求出历界世界杯比赛共有几个国家曾获得过世界杯冠军,请填空 完成。 Function text2(a:arr):integer; var k,j,s:integer; mult:boolean; begin ___(5)___; for j:=2 to 16 do begin k:=1; mult:=false; while not mult and ___(6)___ do if ___(7)__ then mult:=ture else k:=k+1; if not mult then s:=___(8)___ end; text2:=s end;

第三题 fibonacci 数列的规律是:前 2 个数均为 1,从第 3 个数开始每个数等于它前面两个数之和, 即:1,1,2, 3,5,8,13,21,34,55,89,144,233,377,...。已知任意一个大于 0 的整数可以表示为若干 个互不相同的 fibonacci 之数和。 例如:121=89+21+8+3 下面的程序是由键盘输入一个正整数 n,输出组成 n 的互不相同的 fibonacci 数。 例如:若输入 121 则输入 121=+89+21+8+3 本程序的算法如下:(n=121 为例) 1)寻找小于或等于 n 的最大的 fibonacci 数 a(例如 89),并以 a 作为组成 n 的一个数输出。 2)若 n≠a 则以 n-a 作为新的任意正整数(例如 32),重复步骤 1.若 n=a,则结束。程序中的函数 find 返回小于或等于 n 的最大的 fibonacci 数。 program text3(input,output); var n:integer; function find(n:integer):integer; var a,b,c:integer; begin a:=1; b:=1; repeat c:=___(9)___; a:=b;b:=c; until b>=n; if b=n then find:=___(10)___ else find:=___(11)___ end; procedure p(n:integer); var a:integer; begin a:=find(n); write('+',a:4); if a<n then p ___(12)___ end; begin readln(n); write(n:5,'='); p(n);

writeln end. 陈敏贤

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

1、某班有 30 个同学报名参加 100、400、800 米 3 个运动项目比赛。已知有六个人获 100 米参赛资格,8 人获 400 米参赛资格,15 人获 800 米参赛资格,且其中有 3 人全部 获 3 项参赛资格,则至少有多少人没有获任何项目参赛资格。( )

2、下列形状的三角形中,字母 a~i 分别表示数字 1,2,3,??,9

a

b

c

d

e

f

g

h

i

字母 a~i 同时满足下列条件:

a<f<i

b<d, g<h, c<e

a+b+d+f=f+g+h+i=i+e+c+a=19

试求出满足条件的三角形的个数。(



三、写运行结果(共 4 题,每题 8 分,共计 32 分)

1.某程序的文档如下:

2.

键盘输入

PROGRAM

P2;

10

VAR

A:ARRAY [0..8] OF CHAR;

5 34 6 8 9 23 35 78 6 10

I:INTEGER;

屏幕将输出哪些信息

BEGIN

VAR

I, J, N:INTEGER;

FOR I:=1 TO 8 DO

X,Y:ARRAY[1..100] OF INTEGER; A[I]:=CHAR(I*2+ORD(‘A’));

BEGIN

FOR I:=1 TO 4 DO BEGIN

READLN(N);

A[0]:=A[I];

FOR I:=1 TO N DO READ(X[I]);

A[I]:=A[9-I];

FOR I:=1 TO N-1 DO

A[9-I]:=A[0];

FOR J:=I+1 TO N DO

END;

IF X[I]>X[J] THEN

FOR I:=1 TO 8 DO WRITE(A[I]);

INC(Y[I]);

WRITELN;

ELSE IF X[I]>X[J] THEN INC(Y[I]);

END.

FOR I:=1 TO N DO WRITE(Y[I]:5);

WRITELN;

END.

3.某程序的文档如下。键盘输入 5,屏幕

4.

将输出哪些信息?

PROGRAM P4;

VAR

C, I, K, J,A:INTEGER;

VAR

A,B:ARRAY [1..32] OF

INTEGER;

M:ARRAY ]1..100,1..100] OF INTEGER;

I:INTEGER;

BEGIN SSORT(I,J:INTEGER);

PROCEDURE

READLN;

VAR

M,K,X:INTEGER;

C:=A*A;

BEGIN

I:=1;

IF

J-I>1 THEN

K:=(A+1) DIV 2;

BEGIN

FOR J:=1 TO C DO

M:=(I+J) DIV 2;

BEGIN

SSORT(I,M);

M[I,K]:=J;

SSORT(M+1,J);

IF

J MOD A =0 THEN

K:=1;

BEGIN

FOR X:=I TO M DO

IF

I=A

THEN

BEGIN

I:=I+1 B[K+1]:=A[M+X-I+1];

B[K]:=A[X];

ELSE

I:=1;

K:=K+2;

END {THEN}

END;

ELSE

BEGIN

FOR X:=I TO J DO

IF I=1 THEN I=A

A[X]:=B[X];

ELSE I:=I-1;

END;

IF K=A THEN K:=1

END;

ELSE K:=K+1;

BEGIN

END;{ELSE}

FOR I:=1 TO 16 DO A[I]:=I;

END; {FOR}

SSORT(1,16);

FOR I:=1 TO A DO

FOR I:=1 TO 16 DO WRITE(A[I]:3);

BEGIN

WRITELN;

FOR J:=1 TO A DO WRITE(M[I,J]:5);

END.

WRITELN;

END; {FOR}

end. {main}

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

1. 以下程序完成对数组每个元素向后移动 N 个单位。 数组元素的下标依次为 0 到 m-1, 对任意一个数组元素 a[i]而言,它的值移动后将存储在数组元素 a[(i+n) mod m]中。

例如,m=10,n=3,移动前数组中存储的数据如下前一行所示,则程序运行后数组中 存储的数据如下后一行所示。

0

3

86

20

27

67

31

16

37

42

16

37

42

0

3

86

20

27

67

31

程序清单:

PROGRAM T1;

REST:=M; START:=0;

CONST MAXM=10000;

WHILE______②_______DO

VAR I,K,M,N,REST,START,TEMP:LONGINT;

BEGIN

K:=START;

A:ARRAY[0..MAXM] OF LONGINT;

REPEAT

BEGIN

K:=(K+N) MOD M

WRITE(‘INPUT M,N:’);

UNTIL K<=START;

READLN(M,N);

IF_______③______THEN

FOR I:=0 TO M-1 DO A[I]:=____①______;

BEGIN

TEMP:=A[K];

WRITELN(‘BEFORE MOVE’);

REPEAT

FOR I:=0 TO M-1 DO WRITE(A[I]:5);

A[K]:=A[(M*N+K-N) MOD M];

WRITELN;

K:=(M*N+K-N) MOD M;

_______④________

END;

UNTIL K=START;

WRITELN(‘AFTER MOVE’);

________⑤________

FOR I:=0 TO M-1 DO WRITE(A[I]:5);

END;

________⑥_______

_____⑦_____;

END.

2. 求元素之和最大的子方阵: m×n 在 (m, n≤20) 的正整数数字方阵中, 找出一个 p×q 的子阵(1≤p≤m,1≤q≤n)使其元素之和最大。例如,下面 5×4 的数字阵中,元素 之和最大的一个 2×3 子阵。

5×4 数字阵

元素之和最大的 2×3 子阵为

3 11 5 10 2

8 1 21 3 7

4 7 6 8 12

22 9 2 9 3 5 10 21 3 6 8

PROGRAM T2; M,N,P,Q,I,J,MAX,PL,QL,S,IL,JL:INTEGE VAR A:ARRAY[1..20,1..20] OF INTEGER; BEGIN R;

FOR I:=1 TO 20 DO

FOR JL:=J TO ____③____DO

FOR J:=1 TO 20 DO

______④_______;

A[I,J]:=0;

IF S>MAX THEN BEGIN

READLN(M,N);

_______⑤_______;

FOR I:=1 TO M DO

PL:=I;

BEGIN

QL:=J;

FOR J:=1 TO N DO READ(A[I,J]);

END;

READLN;

END;

END;

FOR I:=PL TO ___⑥____DO

READLN(P,Q);

BEGIN

MAX:=O

FOR J:=QL TO ___⑦____DO

FOR I:=1 TO M-P+1 DO

WRITE(A[I,J]):3);

FOR J:=1 TO N-Q+1 DO

WRITELN;

BEGIN

END;

______①_______;

READLN;

FOR IL:=I TO ____②____DO

END.

中学信息学竞赛模拟题

二、阅读下列程序,写出程序运行结果(第 1 题 5 分,第 2,3,4 题各 6 分,共 23 分) program exp1; const n=5; var I,j,k:integer; r:array[0..10] of integer; begin for I:=1 to n do read(r[I]); for I:=2 to n do begin k:=r[I];j:=I-1; while (k>r[j]) and (j>0) do begin r[j+1]:=r[j];j:=j-1;end; r[j+1]:=k; end; for I:=1 to n do write(r[I],’’); writeln end. 键盘输入: 8 4 9 3 5 program exp2; var a,b,f:integer; function gd(m,n:integer):integer; begin if n=0 then gd:=m else gd:=gd(n,m mod n); end; begin readln(a,b); write(‘(‘,a,’,’,b,’)=’); f:=gd(a,b); writeln(f) end. 键盘输入: 172 16

3、Program exp3(input,output); VAR I,J,S:INTEGER; B :ARRAY[0..5] OF INTEGER; BEGIN
第 54 页,共 5 页

中学信息学竞赛模拟题

S:=1; FOR I:=1 TO 5 DO B[I]:=I; J:=1; WHILE J>0 DO BEGIN J:=5; WHILE (J>0) AND (B[J]=10+J-5) DO J:=J-1; IF J>0 THEN BEGIN S:=S+1; B[J]:=B[J]+1; FOR i:=J+1 TO 5 DO B[i]:=B[J]+i-J END; END; WRITELN('S=',S); END. 4、program exp4(input,output); var m,n,g:integer; function gcd(m,n:integer):integer; begin if n=0 then gcd:=m else gcd:=gcd(n,m mod n) end; begin read(m,n); g:=gcd(m,n); writeln('m=',m,'n=',n,'gcd=',g) end. 输入:48 9 三、问题解答(第 1 题每空 4 分,第 2 题 8 分) 1、数据结构中,下面是一个树结构图,这个树的 "先序遍历"结果是________,中序遍历

结果是:________________。 2、给出一个后缀算术表达式为 24 8 +3 *4 10 7 -*/@
第 55 页,共 5 页

中学信息学竞赛模拟题

写出对应的中缀算术表达式:___________________________________________ 四、完善程序(第一题每空 3 分,第二题每空 2 分,第三题每空 4 分,共 32 分 ) 1、连续整数平台问题 已知一个含有多个整数的数组,其中相同的元素集中在一起形成一个平台。以下程序用 于对输入的数组求出其中最大平台长度。例如,中元素个数为 20,它们依次为 2 2 2 2 3 3 3 3 3 1 1 1 1 1 1 1 1 1 4 4 则它的最大平台长度为 9。 program PLATFORM; const maxlength=100; var a:array[1..maxlength] of integer; i,maxi,n,s,t:integer; begin write('n=');readln(n); for i:=1 to n do read(a[i]); readln; maxi:=0; t:= [1] s:=1; for i:=2 to n do if a[i]=t then [2] else begin if s>maxi then maxi:=s; t:=a[i]; [3] end; [4] writeln('maxi=',maxi); end.

2、1000!尾 0 问题 以下程序用于统计 1000!末尾有多少个 0。其中 1000!=1?2?3???1000。实际上我们只 要统计 1000!有多少个因子 10。由于 10=5?2,因而只需统计有多少个因子 5 和 2。显 然在 1~1000 的所有数中,5 的因子个数比 2 的因子个数少。因此,只要统计 1~1000 的所有数中共有多少个因子 5 就行了。 program COUNT0; var i,j,n:integer;
第 56 页,共 5 页

中学信息学竞赛模拟题

begin n:=0; for i:=1 to 200 do begin j:=i*5; while [5] =0 do begin n:=n+1; j:= [6] end; end; writeln(n:4); end. 3、[问题描述]找数问题: 以下程序用在 n 个不同元素中找出第 k 个最小元素。程序中用 分治策略来设计算法。 把这 n 个元素放在一个数组中,然后取出第 k 个元素为标准 m,把 n 个元素重新排列:小于标准 m 的元素放在数组前面,大于该标准的放在数组的后面。把该 元素 m 放在两者之间。设小于标准的元素个数为 j-1,如果 j=k,则 A(k)即为所求元素。如 果 j>k,则第 k 个元素必在区间[1,j],因此取 A[1],…,A[j]为新的元素集合,然后重复上述的” 部分排序”的过程。如果 j<k,则第 k 个元素必在区间[j+1,n],因此取 A[j],…,A[n]为新的元 素集合,重复过程。直至 j=k 为止。 [程序清单] program oimn3; var j,k,n:integer; a:array[1..100] of integer; procedure search(b,e:integer); var I,m,t:integer; begin if b=e then begin j:=b;exit end; I:=b;j:=e;m:= [7] ; Repeat While a[I]<m do inc(i); While m<a[j] do [8] ; If I<j then Begin t:=a[I];a[I]:=a[j];a[j]:=t end; Until I>=j; If I=k then exit; If [9] then search(b,j) else search(j+1,e) End; procedure [10] var I:integer; begin for I:=1 to n do write(a[I],’’); writeln; writeln(‘a[‘,k,’]=’,a[k]); end;
第 57 页,共 5 页

中学信息学竞赛模拟题

begin write(‘n=’);readln(n); write(‘a[1..’,n,’]=’); for k:=1 to n do read(a[k]); readln; write(‘k=’);readln(k); search( [11] ); pr(n); readln end. 吴汉义九江

二、基础知识填空题: (将正确的答案填在括号内,每空 1 分,共 12 分)
1、我们把计算机硬件系统和软件系统总称为 [1] ,硬件系统是指 [2] ,软件系统是指 [3] 。计 算 机 能 实 现 自 动 连 续 运 算 是 由 于 采 用 了 [4] 原理 。 我 们 利 用 计 算 机 系 统 解 题 一 般 包 括 以 下 几 个步 骤 [5] 。程序中的错误一般分为三类,它们是 [6] 。 [1] (A)计算机 CPU (C)计算机系统 [2] (A)控制器,运算器 (C)接口电路,I/O 设备 [3] (A)系统程序和数据库 (C)存储在硬盘和软盘上的程序 [4] (A)布尔逻辑 (C)数字电路 (B)固件 (D)微处理机 (B)存储器,控制器 (D)将(A)、(B)、(C)合起来 (B)应用程序和文档文件 (D)各种程序和相关的文档资料 (B)存储程序 (D)集成电路

[5] (A)画出程序流程图,编写程序,上机调试运行 (B)分析问题的要求,算法分析,编写程序,上机调试运行 (C)画出程序流程图,编写程序,上机调试运行,结果分析 (D)分析问题的要求,算法分析,编写程序,分析结果 [6] (A)语法错误,语义错误,逻辑错误 (B)计算错误,编写错误,语句错误 (C)编写错误,调试错误,运行错误 (D)输入错误,编译错误,装配错误 目前 Internet 上使用的 IP 地址是一个 IP 地址的前 [8] 接入 Internet 网时,必须使用的设备是 在电子邮件中,符号“:-)”常用于表示 [7] (A)8 [8] (A)4 [9] (A)4 [10] (A)网卡 (B)16 (B)8 (B)8 (C)16 (C)16 [7] [10] [12] 位的二进制数。IP 地址大致可分为三类,其中 A 类 [9] 。 (D)64 (D)24 (D)24 (D)浏览器软件 位表示主机号。当个人计算机以拨号方式 [11] , 。在电子邮件地址中,符号“@”的作用 位表示地址类型和网络号,后

(C)32

(B)调制解调器(Modem) (C)电话机
第 58 页,共 5 页

中学信息学竞赛模拟题

[11] (A)分开主机名和域名 (B)分开主机名和用户名 (C) 分开用户名和域名 (D)是一种传输协议 [12] (A)省略 (B)即就是 (C)微笑或开玩笑 (D)不高兴或啼哭

三、问题解答: (第 1 小题 4 分,第 2 小题 6 分,共 10 分)
1、已知一个数列 1,-2,3,-4,5,-6?,可用符号表示为 a 1 =1,a 2 =-2,a 3 =3, ?,试找出 a n-1 ,a n 之间的关系。 2、现有 100 个物体,其重量分别为 1, 2, 3, ?, 100 公克。设它们可以用有 8 个重量为整数的 砝码的天平分别秤出其重量。请问最重的砝码的最小可能值是多少公克?(并请写出所选八个砝码 的重量)(规定秤的时候,物体只能放在天平的右边,砝码只能放在天平的左边。)

六、编写程序: (20 分)
1. 两个整数相加时,得到的数是一个两位数,且两个数字相同;相乘时,得到的数是一个三位数, 且三个数字相同。请编写程序求出所有满足上述条件的两个整数。 2.有 5 个匣子,每个匣子有一把钥匙,分别为 A、B、C、D、E,并且钥匙不能通用,如果随意在每 一个匣子内放入一把钥匙,然后把匣子全部锁上,要求砸开一个匣子后,能相继用钥匙打开其余 4 个匣子,编写程序输出钥匙的所有放法。 例:A->B,B->C,C->D,D->E,E->A

平洲三中

黄忠

二、 问题求解: (第 1 小题 5 分,第 2 小题 7 分,共 12 分) 第 1 题(5 分) 有 5 本不同的数学书分给 5 个男同学,有 4 本不同的英语书分给 4 个女同学,将全部书收回来 后再重新发给他们,与原方案都不相同的方案有____种。 第 2 题(4 分) 在圆周上有 N 个点(N>=6) ,在任意两个点之间连一条弦,假设任何 3 条弦在圆的内部都没有公 共点,问这些弦彼此相交能在圆内构成多少个三角形(只要求写出三角形总数的表示式而无需化 简)?__________ 三、 写出程序的运 行结果: (5+6+8+9 分,共 28 分) 第 1 题(5 分) program test1; var n,k,s:longint; begin n:=1000000000;k:=0;s:=1; while s<=n do begin k:=k+1; n:=n-s; s:=s+6*k end; writeln(k) end.

第 59 页,共 5 页

中学信息学竞赛模拟题

输出:______________________ 第 2 题(6 分) program test2; var I,j:integer; a:array[1..3,1..3]of integer; begin for I:=1 to 3 do begin for j:=1 to 3 do begin if I=3 then a[I,j]:=a[I-1,a[I-1,j]]+1 else a[I,j]:=j; end; writeln end; readln end. 输出:___________________ 第 3 题(8 分) program text3; var s:string;a:array[1?300]of byte; k,I,l:integer; begin readln(s); a[1] :=0;k:=0; I:=length(s); For I:=2 to l do begin while (k>0)and(s[k+1]<>s[i]) do k:=a[k]; if s[k+1]=s[i] then inc(k); a[i]:=k end; for I:=1 to l do if a[i]>0 then write(I:3); writeln; end. 输入:CDCABECADDCDCABDDBDA 输出:______________________ 第 4 题(9 分) program text4; var I,k,n:integer; x,w:array[1?500] of integer; begin readln(n); for I:=1 to n do begin x[i]:=0;w[I]:=1;end; for I:=2 to trunc(sqrt(n))+1 do if x[i]=0 then begin k:=I*I; while k<=n do begin x[k]:=I;k:=k+I;end; end;

第 60 页,共 5 页

中学信息学竞赛模拟题

for I:=n downto 1 do if x[i]<>0 then begin w[x[i]]:=w[x[i]]+w[i]; w[I div x[i]]:=w[I div x[i]]+w[i]; w[i]:=0; end; writeln(w[2],w[3]:5,w[5]:5); end. 输入:20 输出:____________________________ 输入:294 输出:____________________________ 四、完善程序(每空 3 分,共 30 分) 第 1 题(15 分) 数组 a 中有 n 个按升序排列的元素,现要插入一个元素,且插入后 a 中元素仍是升序。定 义过程 p 对给定的值 y,首先找插入位置,然后插入。 程序: program chashu(input,output); const n=50; type atype=array[1..n]of integer; var a:atype; I,count,y:integer; Procedure p(var x:atype;y:integer;var m:integer); Var I,k:integer; Begin If m>=n then writeln(‘out range’) Else begin ______________①___________________ while__________②_________________do k:=k+1; ________________③__________________ x[i+1]:=x[i]; ________________④____________________ m:=m+1 end; end; begin readln(count); for i:=1 to count do a[i]:=3*I; for i:=1 to count do write(a[i]:4); write(‘y=’);readln(y); ________________⑤___________________ for i:=1 to count do write(a[i]:4); writeln end. 第二题(15 分) 降序组合。给定两个自然数 n,r(n>r)输出从数 1 到 n 中按降序顺序取 r 个自然数的所有组 合。例如,n=5,r=3 时,输出的结果是: 5 4 3 5 4 2 5 4 1 5 3 2 5 3 1

第 61 页,共 5 页

中学信息学竞赛模拟题

5 2 1 4 3 2 4 3 1 4 2 1 3 2 1 程序中用 a1,a2,?,ar 表示一个降序排列的 r 个数的组合,要求 a1≥r。为了能够穷举出全部 降序排列的 r 个数的组合,按递减顺序调整前一个组合的部分元素生成 下一组合。调整时,当 ar= 1 就要回溯;另外,调整或回溯后 ai+i≦r 时,也要回溯。上例中由回溯生成下一个组合的情况, 有 541->532,531->521,521->432(二次回溯),431->421,421->321(二次回溯) 。上述过程,当 a1 =r-1 时结束。 程序: program jiangxu; var n,r,I,j:integer; a:array[1..20]of integer; begin write(‘n,r=’); repeat readln(n,r); until n>r; i:=1;a[1]:=n;writeln(‘result:’); repeat if i<>r then if _________①____________ then begin a[i+1]:=_______②_________ ;i:=i+1; end else begin _______③_____________;______④____________; end else begin for j:=1 to r do write(a[j]:3); writeln; if a[r]=1 then begin i:=i-1;a[i]:=a[i]-1; end else a[i]:=a[i]-1 end until ___________⑤_______________________ end.

二.问题求解: (5+5=10 分) 1.给出一组顶点(顶点值用 A、B、C、D、E、F 表示) ,其对应权值分别为 2,3,1,7,8,4。请以 A,B,C,D,E,F 为叶子顶点构造一棵哈夫曼树,并求出它的最小带权路径的 WPL 的值。 2.我校足球队有球衣 30 件,蓝球有球衣 15 件,排球队有球衣 18 件,三队队员总数为 50 人,其中 有 3 人同时参加 3 个队,那么同时只参加两个队的队员有多少?

第 62 页,共 5 页

中学信息学竞赛模拟题

三、阅读程序,并写出正确的运行结果(共 4 题,每题 8 分,共 32 分) 1. program nhioi01; var a,b:integer; procedure pl(x:integer; var y:integer); begin x:=x+y; y:=x+y; end; begin a:=3;b:=5; pl(a,b); writeln(a:3,b:3); pl(b-a,b); writeln(a:3,b:3); readln end. 输出: 2.PROGRAM nhioi02; VAR I,J,L,N,K,S,T:INTEGER; B:ARRAY[1..10] OF 0..9; BEGIN READLN(L,N); S:=L; K:=1; T:=L; IF N>L THEN BEGIN WHILE S<N DO BEGIN K:=K+1;T:=T*L;S:=S+T END; S:=S-T;N:=N-S-1; FOR I:=1 TO 10 DO B[I]:=0; J:=11; WHILE N>0 DO BEGIN J:=J-1; B[J]:=N MOD L; N:=N DIV L END; FOR I:=10-K+1 TO 10 DO WRITE(CHR(ORD(’A ’)+B[I])); READLN; END ELSE WRITELN(CHR(ORD(’A’)+N-1)) END 输入: 4 167 输出: 3. program nhioi03(input,output); var yr,mon,day,n:integer; function leap(year:integer):boolean; begin if year mod 4 <>0 then leap:=false else if year mod 100<>0 then leap:=false else leap:=true; end; function days(month,year:integer):integer; begin case month of 9,4,6,11: days:=30; 1,3,5,7,8,10,12: days:=31; 2: if leap(year) then days:=29 else days:=28;

第 63 页,共 5 页

中学信息学竞赛模拟题

end; end; function julian(y,m,d:integer):integer; var i,s:integer; begin i:=1; s:=0; while i<m do begin s:=s+days(i,y); i:=i+1; end; julian:=s+d; end; begin writeln('enter year,month and day:'); readln( yr,mon,day); n:=julian(yr,mon,day); writeln('The days is ',n:4) end. 输入:2003 9 25 输出: 4.program nhioi04; var n,k,s:longint; begin n:=1000000000;k:=0;s:=1; while s<=n do begin k:=k+1; n:=n-s; s:=s+6*k end; writeln(k) end. 输出: 四、完善程序(共 2 题,每题 14 分,共 28 分) 1.问题描述: 程序 nhioi05 用于判别输入的字符串是否为如下形式的字符串: W&M$ 其中子字符串 M 是子字符串 W 的字符反向排列。在此假定 W 不含有字符&和字符$,字符&用作 W 与 M 的分隔符,字符$用作字符串的输入结束符。 例如: 若输入 ab&ba$,则输出 OK; 若输入 11&12$,则输出 NO; 若输入 &$,则输出 OK。 program nhioi05(input,output); const midch='&'; endch='$'; var an:boolean; ch:char; procedure match(var answer:boolean); var ch1,ch2:char; f:boolean; begin read(ch1); if ch1<>endch then if _____(1)_______

第 64 页,共 5 页

中学信息学竞赛模拟题

then begin match(f); if f then begin read(ch2); answer:=____(2)_______; end else answer:=false end else ______(3)______ else ______(4)______ end; begin writeln('Enter string:'); match(an); if an then begin ____(5)_____; if __(6)____ then writeln('OK.') else writeln('NO.') end else writeln('NO.') end. 2 问题描述 程序 nhioi06 输入字符串的长度(不为 0)和字符串,打印该字符串的所有排列,例如,输入长度 为 3 的 ABC 时,分行打印出 ABC ACB BAC BCA CAB CBA 当输入的字符串的长度大于 10 时,取前 10 个字符。 program nhioi06(input,output); var i,length:integer; letter,newword:array[1..10] of char; used:array[1..10] of boolean; procedure permute(countdown:integer); var j:integer; begin if countdown=___(1)___ then begin for i:= _(2)_ downto __(3)__ do write(newword[i]); writeln; end else begin for j:=1 to __(4)__ do begin if not used[j] then begin used[j]:=true; newword[countdown]:=letter[j]; ______(5)_________; ____(6)_____:=false end

第 65 页,共 5 页

中学信息学竞赛模拟题

end end end; begin writeln('Please enter length:'); readln(length); if ____(7)____ >10 then length:=10; for i:=1 to length do begin used[i]:=false; read(letter[i]) end; writeln('The sult is'); permute(length) end. 林振旺

二、问题求解题:共 2 题,每题 5 分,共计 10 分,给出的答案与标准答案相同,则得分;否则不给 分。 1 某商店规定 2 个空汽水瓶可换汽水1瓶,现有10个空瓶,则最多可喝汽水 2 壹分、贰分、伍分硬币各一枚,一共可以组成 准答案一致,则得分;否则不得分。 1、 PROGRAM one(OUTPUT); VAR A,B,C:INTEGER; PROCEDURE PROC(VAR A:INTEGER; B:INTEGER); BEGIN A:=1;B:=2;C:=3 END; BEGIN A:=5;B:=6;C:=7; PROC(A,B); WRITELN(A:2,B:2,C:2) END.
2、 PROCEDURE two( hight:Integer;ch1,ch2:Char) ; VAR i, j: Integer; BEGIN FOR i: =1 TO hight DO BEGIN Write( ch1: 10-i) ; FOR j: =1 TO 2*i-3 DO Write( ch2) ;

瓶。

种币值。

三、程序阅读理解题:共 4 题,每题 8 分,共计 32 分。阅读理解程序,给出程序的输出。输出与标

第 66 页,共 5 页

中学信息学竞赛模拟题 IF i=1 THEN Writeln ELSE Writeln( ch1) END END; 若 在 主 程 序 中 执 行 two( 6, ‘*’, ‘+’) 则 输 出 图 形 是

3、

PROGRAM

three( Output) ;

VAR a: ARRAY[1..4] OF Char; c, ch: Char; BEGIN FOR ch: =‘A’ TO ‘D’ DO a[Ord( ch) -Ord( ‘A’) +1]: =ch; FOR ch: =‘A’ TO ‘D’ DO BEGIN FOR c: =ch TO ‘D’ DO Write ( a[Ord( c) -Ord( ‘A’) +1]) ; Writeln END END. 4、 PROGRAM four( Output) ; VAR a, b: Integer; PROCEDURE proc4( x: Integer; VAR y: Integer) ; BEGIN x: =a+b; y: =a-b END; BEGIN a: =1; b: =2; proc4( b, a) ; Writeln( a: 3, b:3) END.

四、程序完善题:共 2 题,每题 14 分,共计 28 分。要求考生根据程序的功能说明和代码的上下文, 填出被略去的语句。填对则得分;否则不得分。
1 PROGRAM VAR i, j: Ineger; temp: Real; A:ARRAY[1..20] of real; BEGIN FOR i: =1TO 20 DO BEGIN p1( Input, 0utput) ;

第 67 页,共 5 页

中学信息学竞赛模拟题 Read(A[I]); Write(A[I]) End; Writeln; For I:=1 to (1) (2) Then begin (3) A[I]:=A[j]; A[j]:=temp End; FOR i: =1 T0 write(A[I]) END. 2、 下 面 的 程 序 将 n 个 学 生 的 数 学 成 绩 从 键 盘 输 入 , 按 0~ 59 分 , 60 ~ 69 分 , 70~ 79 分 , 80~ 89, 90~ 100 分 , 分组统计人数。 PROGRAM p2( Input, Output) ; 20 DO 19 do

CONST n=20; VAR i, k: Integer; s: ARRAY[1..5] OF Integer; a: ARRAY[1..n] OF Integer; BEGIN FOR i: =1 TO s[i]: =0; FOR i: =1 TO BEGIN (3) IF a[i]>=90 THEN k: =1 ELSE IF a[i] >=80 THEN k : = 2 ELSE IF a[i] >=70 THEN k: = 3 ELSE IF a[i] >=60 THEN k: = 4 ELSE k: = 5 s[k]: = END; Readln; FOR i: =1 TO 5 DO Write ( s[i]:3) ; Writeln END. (4) ; (2) DO (1) DO

刘志军 二、 问题求解 (5+5=10 分) 1、有兔、狗、鸡、鸭、鹅五种动物分别关在 5 个密封的笼子里,甲说:第二号笼子装的是鹅,第四 号笼子里装的是鸡;乙说:第一号笼子里装的是兔子,第五号笼子里装的是鸭;丙说:第三号笼子
第 68 页,共 5 页

中学信息学竞赛模拟题

里装的是鸭,第四号笼子里装的是狗;丁说第二号笼子里装的是鸡,第五号笼子里装的是鹅。他们 当中每个人都只有一句是实话,另一句是谎话。请你猜猜一到五号笼子里到底各装了什么动物? 3、 将含有 100 个结点的完全二叉树从根这一层开始,每层从左到右依次对结点编号,根结点的编 号为 1。问编号为 71 的双亲的编号为?

罗惠敏

二、问题解答: (第 1 题 6 分,第 2 题为 4 分,共 10 分) 1、 动物园里养了猴子、梅花鹿和孔雀三种动物,其中猴子和梅花鹿的数量为 152,梅花鹿 和孔雀的个数为 58 只,孔雀和猴子的个数为 128 只,问该动物园中猴子、梅花鹿和孔 雀各有多少只?(猴子:111,梅花鹿:41,孔雀:17) 猴子: 走法有多少种? 结果: B 梅花鹿: 孔雀 2、某市有 7 条南北向街道,5 条东西向街道,如果从城的西南角 A 走向东北角 B,最短的

A

二、问题求解 (每小题 6 分,共 12 分)
1、 圆周上有 10 个点,每两点间连一弦,如果其中任意三条弦在圆内都不共点,由这些弦在圆内的 交点为顶点的三角形的个数为____________。 2、表达式 3*5+2 是二叉树中用何种遍历的表达式? 并画出该表达式二叉树。

三、写出程序的运行结果 : (共 28 分)
第 1 题(8 分)

program test31;
const n=5; var I,j,k:integer; r:array[0..10] of integer;

第 69 页,共 5 页

中学信息学竞赛模拟题

begin for I:=1 to n do read(r[I]); for I:=2 to n do begin k:=r[I];j:=I-1; while (k>r[j]) and (j>0) do begin r[j+1]:=r[j];j:=j-1;end; r[j+1]:=k; end; for I:=1 to n do write(r[I],’’); writeln

end.
输入: 8 4 9 3 5 输出: 第 2 题(10 分)

program test32;
var a:array[1..1000] of word;

n,i,j,dep:word;

begin

write('N(1-1000)='); readln(n);

if (n=0) or (n>1000) then begin writeln('Input error.'); readln; halt; end;

fillchar(a,sizeof(a),0); a[1]:=1; dep:=1;

for i:=2 to n do begin

j:=3; while (j>0) do begin

dep:=dep mod n+1;

第 70 页,共 5 页

中学信息学竞赛模拟题

if a[dep]=0 then dec(j);

end;

a[dep]:=i;

end;

for i:=1 to n do write(a[i]:5);

writeln;

end.

输入:8 输出:

第 3 题(10 分) program test33; const n=5; var i:integer; x,y:real; a:string[n]; begin x:=0.375; while i<n do begin y:=x;

第 71 页,共 5 页

中学信息学竞赛模拟题

i:=0; while i<n do begin y:=y*2; i:=i+1; if y>=1 then begin a[i]:='1';y:=y-1 end else a[i]:='0'; end; write('0.'); for i:=1 to n do write(a[i]); writeln; x:=x-0.01 end end. 输出: 四、完善程序 (每空 2 分,共 28 分)
第 1 题(6 分) [问题描述] 彼得在邮局值夜班,十分无聊,他对邮局内的 200 个信筒(编号为 1 到 200) ,全部打开。然后 每隔一个信筒关闭一个(2,4,6,?) 。然后每隔两个信筒进行检查( 3,6,9,?) ,若开着,则 关上;若关着,则打开,接着再每隔 3 个(4,8,12,?)作类似工作。问最后结果哪些信筒开着, 哪些信筒关着。 Program test41;

const maxn=200; var i,j:integer; open:array[1..maxn] of integer; begin for i:=1 to maxn do open[i]:=1;

第 72 页,共 5 页

中学信息学竞赛模拟题

for i:=2 to maxn do

begin

j:=i;

while



do

begin open[j]:=



; j:=



end

end;

for i:=1 to maxn do if open[i]=1 then write(i:4);

writeln

end.

第 2 题(12 分) [问题描述]

本程序将自然数 1,2,……,N*N(N≥2)按顺时针方向依次写在 N 阶方阵中。N=5 时方阵如下:
1 16 15 14 13 program 2 17 24 23 12 3 18 25 22 11 4 19 20 21 10 5 6 7 8 9

test42;

const maxn=10;

第 73 页,共 5 页

中学信息学竞赛模拟题

var i,j,k,m,n:integer;

a:array [1..maxn,1..maxn] of integer;

begin

write('Input n:'); readln(n);

m:=1; k:=1;

repeat

i:=k;

j:=k;

repeat

a[i,j]:=m;

j:=j+1;

m:=m+1

until



;

repeat

a[i,j]:=m;

i:=i+1;

第 74 页,共 5 页

中学信息学竞赛模拟题

m:=m+1

until



;

repeat

a[i,j]:=m;

j:=j-1;

m:=m+1

until



;

repeat

a[i,j]:=m;

i:=i-1;

m:=m+1

until



;

k:=k+1

until k>n div 2;

if



then



;

for i:=1 to n do

第 75 页,共 5 页

中学信息学竞赛模拟题

begin

for j:=1 to n do write(a[i,j]:3);

writeln

end

end.

第 3 题(12 分) [问题描述] 从 1 到 n 的整数中(1,2,??,n)取出 r 个整数(a1,a2,??,a r ),其中 a1<a2<??,<a r 程序将打印出全部满足上述关系的 a1,a2,??,a r 的组合。当 n=5,r=3 时,程序输出如下: 1 2 3 1 1 1 1 1 2 2 2 3 2 2 3 3 4 3 3 4 4 4 5 4 5 5 4 5 5 5

program test43;

const maxn=10; maxr=maxn; var i,k,m,n,l,r,t:integer; a:array [0..maxr] of integer; begin

第 76 页,共 5 页

中学信息学竞赛模拟题

write('Input n,r='); readln(n,r); for i:=1 to r do a[i]:=i;

for i:=1 to r do write(a[i]:3);

writeln;

l:=0;

while



do

begin

m:=r-l;

k:=



;

if a[m]<k

then begin



;

for i:=



to r do a[i]:=



;

for i:=1 to r do write(a[i]:3);



; writeln end

else l:=l+1;

end

第 77 页,共 5 页

中学信息学竞赛模拟题

end.

二、 问题求解题: 本题共 2 题 ,每题 5 分,共计 10 分。 ( ) 第 1 题:有雌雄一对兔子,假定两个月便可以繁殖雌雄各一的一对兔子。问 12 个月后共有多少对兔 子? 请你写出计算 12 个月后兔子数的公式: 第 2 题:某校足球队有球衣 30 件,篮球有球衣 15 件,排球队有球衣 18 件,三队队员总数为 50 人, 其中有 3 人同时参加 3 个队,那么同时只参加两个队的队员有 三、 程序阅读理解 题: (本题 共 4 题,每题 8 分,共 计 32 分) 第 1 题: 。

program ex001;

var

x,y:integer;

procedure swap(x,y:integer);

var

temp:integer;

begin

temp:=x;

x:=y;

y:=temp;
第 78 页,共 5 页

中学信息学竞赛模拟题

writeln(x,y)

end;

begin

x:=1;

y:=2;

writeln(x,y);

swap(x,y);

writeln(x,y)

end.
输出: 第 2 题:

program ex002;

type

arr=array[1..100] of integer;

var

a:arr;

第 79 页,共 5 页

中学信息学竞赛模拟题

s,n,m,i,j,k,bot:integer;

begin

read(n,m,k);

s:=0;

for i:=1 to n do s:=s+1;

for i:=1 to n do a[i]:=s;

i:=0;j:=0;bot:=0;

repeat

i:=i+1;

if i=n+1 then i:=1;

if a[i]=s then j:=j+1;

if j=m then begin a[i]:=-100;bot:=bot+1;j:=0;write(i,' '); end;

until bot=k;

end.
输入:100 输出: 第 3 题: 36 6

第 80 页,共 5 页

中学信息学竞赛模拟题

program ex003;

const n=200;

var si,pr:set of 2..n;

x,j,m:integer;

begin

writeln('please input m:');readln(m);

si:=[2..m];pr:=[];

x:=2;

repeat

while not(x in si) do

x:=succ(x);

pr:=pr+[x];

j:=x;

while j<=m do

begin si:=si-[j];j:=j+x; end;

until si=[];

第 81 页,共 5 页

中学信息学竞赛模拟题

j:=0;

for x:=2 to m do

if x in pr then begin

write(x:5);inc(j);if j mod 10 =0 then writeln;

end;

writeln

end.
输入:20 输出: 第 4 题:

program ex004;

const maxn=1000;

var

i,j,k,n,r,p,g:longint;

a:array[1..maxn] of longint;

function gcd(m,n:longint):longint;

第 82 页,共 5 页

中学信息学竞赛模拟题

var r:longint;

begin

while n<>0 do

begin

r:=m mod n;

m:=n;

n:=r

end;

gcd:=m

end;

begin

n:=1000;

r:=202;

for i:=1 to n-r do a[i]:=n-i+1;

for i:=2 to r do

第 83 页,共 5 页

中学信息学竞赛模拟题

begin

k:=i;

for j:=1 to n-r do

if gcd(k,a[j])>1 then

begin

g:=gcd(k,a[j]);

k:=k div g;

a[j]:=a[j] div g;

if k=1 then break

end

end;

p:=1;g:=0;

for i:=1 to n-r do

begin

p:=p*a[i];

while p mod 5 =0 do

第 84 页,共 5 页

中学信息学竞赛模拟题

begin

p:=p div 5;

g:=g+1

end;

p:=p mod 5

end;

writeln(g)

end.
输出: 四、 程序完善题: 本题共 2 题 ,每题 14 分,共计 28 分) ( 第 1 题: [问题描述] 求具有下列特征的一个六位数: 1、 该数各数位上的 6 个数字互不相同; 2、 该数分别乘 2,3,4,5,6 得到新的 5 个六位数,它们也都由组成原数的 6 个数字组成。 程序中,函数 check(a,s)判断六位数 a 的各倍数的组成数字集合是否与 a 的组成数字集合相同。 p10[0..6]是为了减少计算方幂,存储 10 的各幂次的数组。 [程 序清单 ]

program ex02;

const n=6;

type dset=set of 0..9;

var
第 85 页,共 5 页

中学信息学竞赛模拟题

a:real;s:dset;i:integer;

p10:array[0..n]of real;

function check(a:real;s:dset):boolean;

var i,j,d:integer;b:boolean;

ss:dset;t:real;

begin

i:=2;b:=6*a<p10[n];

while

(1)

begin

ss:=s;t:=i*a;j:=n;

while (j>=1) and b do

begin

d:=

(2)

;

t:=t-d*p10[j-1]; b:=d in ss;

j:=j-1;

ss:=ss-[d]

第 86 页,共 5 页

中学信息学竞赛模拟题

end;

i:=i+1

end;

check:=b

end;

function try(i:integer):boolean;

var j:integer;b1:boolean;

begin

b1:=false;j:=0;

if i=n then

(3)

;

repeat

if not(j in s) then

begin

a:=

(4)

;

s:=s+[j];

第 87 页,共 5 页

中学信息学竞赛模拟题

if i=1 then b1:=check(a,s)

else b1:=try(i-1);

if not b1 then

begin

s:=

(5)

;

(6)

end

end;

(7)

;

until (j>9) or b1;

try:=b1

end;

begin

a:=0;s:=[];p10[0]:=1.0;

for i:=1 to n do p10[i]:=p10[i-1]*10.0;

第 88 页,共 5 页

中学信息学竞赛模拟题

if try(n) then writeln(a:10:0);

writeln('Finish!')

end.

第 2 题: [问题描述]

给定两个自然数 n,r(n>r),输出从数 I 到 n 中按降序顺序取 r 个自然数的所有 组合。例如,n=5,r=3 时,输出的结果是

543

542

541

532

531

521

432

431

421

第 89 页,共 5 页

中学信息学竞赛模拟题

321

程序中用 a 1 ,a 2 ,…a r 表示一个降序排列的 r 个数的组合,要求 a 1 ≥r。为了能够 穷举出全部降序排列的 r 个数的组合,按递减顺序调整前一个组合的部分元素生成下一 个组合。调整时,当 a r =1 就要回溯;另外,调整或回溯后,a i +i≤r 时,也要回溯。上例 中由回溯生成下一个组合的情况,有 541→532,531→521,521→432(二次回溯), 431421421321(二次回溯)。

上述的生成过程,当 a 1 =r-1 时结束。
[程 序清单 ]

program ex002;

var

n,r,i,j:integer;

a:array[1..20] of integer;

begin

writeln('N','R');

REPEAT

read(n,r)

UNTIL n>r;

第 90 页,共 5 页

中学信息学竞赛模拟题

i:=1;

a[1]:=n;

writeln('RESULT:');

REPEAT

if i<>r

then if

(1)

then begin

a[i+1]:=

(2)

;

i:=i+1

end

else begin

(3)

;

(4)

end

else begin

for j:=1 to r do write(a[j]:3);

第 91 页,共 5 页

中学信息学竞赛模拟题

writeln;

if a[r]=1

then begin

(5)

;a[i]:=a[i]-1

end

else

(6)

end

UNTIL

(7)

end.

二、 问题解答: ( 本题共 2 小 题,每题 5 分,共 10 分) 1、 有一群儿童,他们的年龄之和 50 岁,其中最大的 13 岁,有一个是 10 岁;除去这个 10 岁儿 童之外,其余儿童的年龄都是整数且恰好组成一个等差数列.请按由小到大的顺序写出这几个儿童 的岁数:____________________________ 2、有 n 个不同的整数,从中取出两组来, 要求第一组数里的最小数大于第二组的最大数。问 有多少种方案?________________

三、 阅读程序,并 写出程序 正确的运行结 果: (本题 共 4 小题,每题 8 分, 共 32 分 ) 1、program expl (input,output); var i,s,max : integer ;

a:array[1?10] of integer ; begin

第 92 页,共 5 页

中学信息学竞赛模拟题

for i:=1 to 10 do read (a[i]); max :=a[1] ; s:=a[1] ; for i:=2 to 10 do begin if s<0 then s:=0; s:=s+a[i]; if s>max then max:=s; end; writeln(‘max=’,max) end 输入:44 15 -55 4 -8 2 8 9 6

2、progam exp2(input,output); var p,q,s,t:integer; begin readln(p); for q:=p+1 to 2*p do begin t:=0; s:=(p*q)mod(q-p); if s=0 then begin t:=p+q+(p*q)div(q-p); write(t:4); end; end; readln end. 输入:12

3、program ex3(output); type arr=array[1..4,1..4]of integer; var a:arr; x,y:integer; begin for x:=1 to 4 do for y:=1 to 4 do

第 93 页,共 5 页

中学信息学竞赛模拟题

if (x+y=5) or (x-y=3)then a[x,y]:=1 else a[x,y]:=0; for x:= 1 to 4 do begin for y:= 1 to 4 do write(a[x,y]:3); writeln end; end.

4、Program EXP4(input,output);

const n=4; type se=array[1..n*2] of char; var i,j,i1,j1,k,s,t,s1,L,swap:integer; temp :char; a :se; Begin for i:=1 to n*2 do s:=0; t:=0; read(a[i]); readln;

for i:=1 to n*2 do if a[i]='1' then s:=s+1 else if a[i]='0' then t:=t+1; if (s<>n) or (t<>n) then writeln('error') else begin s1:=0; for i:=1 to 2*n-1 do writeln('jamp=',s1); if a[i]<>a[i+1] then s1:=s1+1; swap:=0;

第 94 页,共 5 页

中学信息学竞赛模拟题

for i:=1 to 2*n-1 do for j:=i+1 to 2*n do if a[i]<>a[j] then begin temp:=a[i];a[i]:=a[j];a[j]:=temp; s:=0; for L:=1 to 2*n-1 do if a[L]<>a[L+1] then s:=s+1; if s>swap then begin swap:=s; i1:=i; j1:=j end; temp:=a[i];a[i]:=a[j];a[j]:=temp end; if swap>0 then writeln('maxswap=',swap-s1,' i=',i1,' j=',j1) end End.
输入:00100111

四、 完善程序: (本题共 7 空 ,每空 4 分, 28 分 ) 1、孪生素数是指两个相差为 2 的素数,例如:3 和 5,5 和 7,11 和 13 等。下面的程序可输入 出 15 对孪生素数,其中函数 f 判断整数 a 是否素数。 Program p(output); var k,n:interger function f(a:interger):boolean; var
第 95 页,共 5 页

中学信息学竞赛模拟题

k:integer; flag:boolean; begin flag:=____________; k:=2; while (k<=a div 2) and ______________do if a mod k=0 then ______________ else k:=k+1; f:=flag end begin n:=0; k:=2; repeat if f(k) and ___________ then begin n:=n+1; writeln(k,k+2) end k:=k+1 until n=15 end

2、已知有类型说明 : type t1 =^rec; rec=record data:integer; next:t1 end; 设 head 为 t1 型变量,并指向一个不少于 2 个节点的单链表。过程 p1 可删除 phead 所指的链表 所有重复节点(即若有多个节点的 data 域的值相等,则只保留最前面的一个节点) 。 例如:若原链表为

则执行 pl(head);后链表为:

第 96 页,共 5 页

中学信息学竞赛模拟题

请完成过程 pl procedure pl(head:t1); var q,p,t1; begin while begin p:=head; q:=p^.next; while q<>nil do if q^.data =head^.data then begin _________:= q.next; dispose(______); q:=p^.next end else begin p:=p^.next; q:=__________ end; head:=head^.next end; end; head<>nil do

一.

回答问题: (10 分 每小题 2.5 分)" (1)奇数;(2)5 的倍数;(3)比 20300 大的数;(4)不含数字 0,且 1,2 不相邻的数。

1.用 0,1,2,3,4,5 这六个数字组成无重复数字的五位数,分别求出下列各类数的个数: 三.阅读程序,并写出程序的正确运行结果:(第一小题 8 分,第二小题 20 分,共 28 分) 1. program guocheng(input, output); var a,b,c,d:integer; procedure p(a:integer; var b:integer); var c:integer; begin a:=a+1; b:=b+1; c:=2; d:=d+1;
第 97 页,共 5 页

中学信息学竞赛模拟题

writeln('m',a,b,c,d); if a<3 then p(a,b); writeln('n',a,b,c,d) end; begin a:=1; b:=1; c:=1; d:=1; writeln('x',a,b,c,d); p(a,b); writeln('y',a,b,c,d); end. 程序输出结果为:_________________________________ 2. program ex2; const n=6; var a:array[1..n,1..n] of 0..1; b:array[1..n] of integer; I,j,h,k,m:integer; Begin K:=1; m:=0; h:=0; Writeln('please read the data:'); For i:=1 to n do Begin B[i] :=0; For j:=1 to n do Begin read(a[i,j]);b[i]:=b[i]+a[i,j]; end; m:=m+b[i]; if(b[i] mod 2=1) then begin inc(h); k:=i; end; end; if h>2 then begin writeln('no solution'); halt end; write(k); begin repeat inc(i); until a[k,i]<>0; if b[i]>1 then begin
第 98 页,共 5 页

i:=1;

while m>2 do

中学信息学竞赛模拟题

write('-->',i); a[k,i]:=0; a[i,k]:=0; b[i]:=b[i]-1; b[k]:=b[k]-1; m:=m-2; k:=i;i:=0; end; end; repeat i:=i+1 until a[k,i]<>0; writeln('-->',i); end. 输入:0 1 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 0 1 1 0 1 1 1 0 0 1 0 1 1 1 0 1 1 0 输出结果是:________________________________________ 四.根据题意,将程序补充完整(第一小题 20 分,第二小题 12 分,共 32 分) [问题描述] 下面程序的功能是从键盘读取 A, 数组的元素, B 数组均已从小到大排好序 B A, (无相同元素) 现 . 将 A,B 合并为数组 C,同样要求数组 C 也是从小到大排好序(有相同元素时只保留一个) 程序中 N 表示数组 A、B 的长度, i,j,k 分别表示数组 A、B、C 的取数或存数的指针. [程序如下]: program excp3; const type arrl=array[l..n]of integer; arr2=array[1..m] of Integer; var a,b: c: arrl; arr2; n=8; m= 2 * n ;

i,J,k:integer; procedure copy(x:arr1;var y:arr2;var I,j:integer); begin i:=I+1;y[i]:=x[j];j:=j+1; end; begin for i:= 1 to n for i:= 1 to n while do do read(a[i]);read1n; read(b[i]);read1n; do then copy(b,c,k,j) else begin copy(a,c,k,i); _____ ③_____ end; while while for I=1 to k do writeln; end.
第 99 页,共 5 页

1:=1; j:=1;_______①______ ___________②_______ else if b[j]<a[i] if a[i]<b[j] then copy (a,c,k,I)

_____④ _______ _____⑤ _______ write (c[i];4);

do do

copy(a,c,k,j); copy(b,c,k,j);

中学信息学竞赛模拟题

2. 【问题】任给一个自然数 n,求出这个自然数不同因数的个数。 例如 n=6 时,因为 1,2,3,6 这四个数均是6的因数,故输出为 total=4。 program ex1(input,output); var n,nums,k,i:longint; begin repeat writeln('input n:'); readln(n); if n<=0 then writeln('N>0!!'); until n>0; k:= nums:=2; for i:=2 to k do if n mod i=0 then 3 2 ; ; if n=sqr(k) then writeln('nums:',nums); end. 二. 问题求解: 5 + 5 = 10 分) ( 1、 8 个引 擎 分 列 两 排, 要 求 引 擎 的 点 火的 次序 两 排 交 错 开 来 ,试 求从 一 特 定 引 擎 开始 点 火有 ___________种方案。 2、 kathy 函数是这样定义的: f(1)=1; f(3)=3; f(2n)=f(n); f(4n+1)=2f(2n+1) -f(n); f(4n+3)=3f(2n+1)-2f(n) 对于一个始定的数 m=30,求出所有的满足 f(n)=n , (n<=m)的自然数 n 的个数。 三. 阅读程序,写 出正确的 程序运行结果: 8+8+8+8=32 分) ( 1、 program t3_1; const var begin maxn=20; n,i,j,k:integer; a:array[1..maxn,1..maxn] of readln(n); fillchar(a,sizeof(a),0); k:=0; for if j:=2 for to n+1 do 1 do odd( j ) then i:=j-1 downto begin inc(k); a[i,j-i]:=k; a[n+1-i,n+1-j+i]:=n*n+1-k; end else for i:=1 to j-1 do begin inc(k); a[i,j-i]:=k; a[n+1-I,n+1-j+i]:=n*n+1-k; integer; 1 ;

第 100 页, 5 共 页

中学信息学竞赛模拟题

end; for i:=1 to n do begin for k:=1 to n do write(a[I,k]:4); writeln; end; end. Input: n: Output: 2、 program t3_2; const n=200; var si,pr:set of 2..n; x,j,m:integer; begin readln(m); si:=[2..m]; pr:=[ ]; x:=2; repeat while not (x in si) do j:=x; j:=j+x; end; x:=succ(x); pr:=pr+[x]; while j<=m do begin si:=si-[j]; until si=[ ]; j:=0; for x:=2 to m do if x in pr then begin end; writeln; end. Input: Output: 3、 program var t3_3; i:integer; s:real; begin i:=0; repeat inc(i); s:=s+1/i-1/(i+1)+1/(i+2)-1/(i+3);
第 101 页, 5 共 页

5

write(x:3); inc(j); if j mod 10=0 then writeln;

m=30

中学信息学竞赛模拟题

until i=10; writeln(s:5:2); end. Output: 4、 program t3_4; const n=5; var a:array[1..n,1..n]of 0..1; b:array[1..n]of integer; i,j,h,k,m:integer; begin k:=1; m:=0; h:=0; for i:=1 to n do begin b[i]:=0; for j:=1 to n do begin read(a[i,j]); b[i]:=b[i]+a[i,j]; end; m:=m+b[i]; if( b[i] mod 2 =1)then begin inc(h); k:=i; end; end; if h>2 then write(k); begin repeat inc(i); until a[k,i]<>0; if b[i]>1 then begin write('->',i); a[k,i]:=0; b[i]:=b[i]-1; m:=m-2; k:=i; i:=0; end; end; repeat i:=i+1; until a[k,i]<>0 ; writeln('->',i); end. Input: 0 1 0 1 1 1 0 1 0 0 0 1 0 1 0 1 0 1 0 1 1 0 0 1 0
第 102 页, 5 共 页

begin writeln('no solution'); halt i:=1;

end;

while m>2 do

a[i,k]:=0; b[k]:=b[k]-1;

中学信息学竞赛模拟题

Ouput:

四. 完善程序: 14 + 14 = 28 分) ( P 1、 求 B mod K 的值。 其中 B,P,K 为自然数,B,P 和 K×K 为长整型 数。 【问题分析】:如果将 B,P 的范围缩小,这道题不难,难就难在它的数据大,所以另想巧妙的办 法。 先介绍一个原理:A×B mod K=(A mod K)×(B mod K) mod K 显然,有 了这个原理,就可以把 较大的幂分解成较小的,因而免去了高精度计算等复杂过程。那么怎样分解最有效?显然对任何一 个自然数 P,有 P=2×P div 2+P mod 2,如:P=19,有 19=2×9+1,利用上述原理就可以把求 B 的 × 19 次方除以 K 的余数转化为求 B 的 9 次方除以 K 的余数,即 B 19 =B 2 9+1 =B×B 9 ×B 9 ,再进一步分 解下去就不难求得整个问题的解。与循环比赛问题一样,这也是一个用分治法来解决的问题,可以 用递推的方法来处理。如 9=2×9+1,9=2×4+1,4=2×2+1,2=2×1+0,1=2×0+1,反过来,我们可以从 0 出发,通过乘以 2 再加上一个 0 或 1 而推出 1,2,3,9,19,这样就逐步得到了原来的指数,进而 递推出以 B 为底,依次以这些数为指数的自然数除以 K 的余数。不难看出这里每一次乘以 2 后要加 的数就是 19 对应的二进制数的各位数字,即 1,0,0,1,1,而 19(10011) 2 ,求解的过程也就是 将二进制数还原为十进制数的过程。 【算法设计】程序中用数组 a 存放 P 对应的二进制数,总位数为 len,a[1]存放最低位。变量 rest 记录每一不求得的余数。 【程序清单】program ex4-1; var b,p,k,i,len,rest,temp:longint; a:array[1..32] of longint; begin write(‘input b,p,k;k<=46340:’); readln(b,p,k); len:=0; temp:=p; while ______(1)______ do begin ______(2)_________; a[len]:=temp mod 2; temp:=temp div 2; end; rest:=1; for (3) do begin temp:= (4) ; if a[i]=1 then rest:= (5) else rest:=temp; end; writeln(b,’^’,p,’mod’,k,’=’,rest); end.

2、有 n 堆纸牌,编号分别为 1,2,…,n。每堆上有若干张,但牌总数必为 n 的的倍数。可以在任 一堆上取若干张纸牌,然后移动。移牌规则为:在编号为 1 的堆上取的牌,只能移到编号为 2 的堆 上, 编号为 n 的牌,只能移到编号为 n-1 的堆上;其他堆上的牌,可以移到相邻左边或者右边的 堆上。现在要求找出一种移动的方法,用最少的移动次数使得每堆上纸牌数都一样。 例如:n=4,4 堆纸牌数分别为: (1)9 (2)8 (3)17 (4)6 移动 3 次可达到目的:从第 3 堆取 4 张放到第 4 堆(9 8 13 10)->从第 3 堆取 3 张放到 第 2 堆(9 11 10 10)->从第 2 堆取 1 张放第 1 堆(10 10 10 10) 。 输出:from 3 to 4 , 4 from 3 to 2 , 3 from 2 to 1 , 1
第 103 页, 5 共 页

中学信息学竞赛模拟题

tatol:3 【问题分析】如果把眼光几种在中间的牌堆上,则不方便讨论,着眼点应该放在两端的牌堆上, 不妨从左端的 1 号牌堆开始看起。如果 1 号牌堆中的牌多于(或少于)平均数,它必须利用一次移 动将多余的牌放入第 2 堆(或者由第 2 堆中补充不足) ,以后就不用进行这样的操作了。从左到右对 每堆牌进行这样的操作,若右边的牌堆中牌数仍不够,则考虑更右的牌堆中先取出牌,就可以将牌 均分。 【算法设计】n 为牌的堆数;ave 为平均每堆牌所拥有的牌数;ans 为最少点年个次数。List[i] 表示编号为 i 的牌堆中有多少张牌。 stack 表示堆栈,将不能立即执行的操作数加入其中。 【程序清单】 program t4-2; var n,top,ave,ans,i,j,k: longint; list:array[1..100] begin readln(n); ave:=0; for i:=1 to n do begin read(list[i]); end; ave:= ans:=0 ; begin (1) top:= 0; list[i+1]:= list[i+1]+list[i]-ave; if list[i]<>ave then (2) ; inc(top); stack[top,1]:= i; stack[top,2]:= list[i]-ave; if begin (3) then do for j:=top downto 1 begin k:=stack[j,1]; if then else end; top:=0; end; end; writeln('tatol: ' ,ans); end. (4) writeln(‘from ’, k,’ (5) to ‘,k+1,‘ , ’,stack[j,2]) ; ; ave:=ave+list[i]; of longint; of longint; stack:array[1..100,1..2]

for i:=1 to n-1 do

二、问题求解:(7+6+7) 1. 已 知 一 棵 二叉 树 的前 序序 列 是 : ABDCEFG, 这 棵 二 叉 树 的中 序 序列 是: DBAECFG, 请 构 造 出

第 104 页, 5 共 页

中学信息学竞赛模拟题

该二叉树。 2.用 5 个空瓶可以换 1 瓶汽水,某班同学喝了 161 瓶汽水,其中有一些是用空瓶换的,那么他至少 要买汽水多少瓶? 3. 牧场上长满了牧草,每天均速生长,这片牧场可供10头牛吃20天,可供15头牛吃10天。 问供25头牛可吃几天? 一、 问题 求解题: 共 2 题,每题 5 分,共计 10 分。 画出这棵树,并写出其前序遍历的结果。

1、 假设一颗二叉树的后序遍历结果为 FBGCAHEJKDS,中序遍历结果为 FBACGSEHDJK,请

2、 某活动中心象棋班 28 人,围棋班 16 人,电脑班 25 人,现有三组成员总数为 45 人,其中 3 人同时参加 3 个班,那么同时只参加两个班的队员有多少?

三、 程序阅读理解 题: 共 4 题,每题 8 分,共计 32 分。 1、var len,n:word; string0:string; function l(st:string;i:integer):string; begin len:=length(st); if (len=0) or (len<=n) then l:=st else l:=copy(st,1,n); end; function r(st:string;n:integer):string; begin len:=length(st); if (len=0) or (len<=n) then r:=st else r:=copy(st,len-n+1,n); end; begin readln(string0); readln(n); writeln(l(string0,n)); writeln(r(string0,n)); end.

第 105 页, 5 共 页

中学信息学竞赛模拟题

输入:aabbccwwabcabc 6 结果:aabbcc 2 、 var n:integer; function count(n:integer):integer; begin if n=1 then count:=0 else if n mod 2=0 then count:=count(n div 2)+1 else count:=count(n*3+1)+1; end; begin readln(n); writeln(count(n)); end. 输入:77 答案:22 3 var n,I,x:integer; d:array[0..10] of integer; begin readln(n); for I:=1 to n do begin read(x); d[x]:=d[x]+1; end; d[0]:=0; for I:=1 to 10 do d[I]:=d[I-1]+d[I]; for I:=1 to 10 do if d[I]<>d[I-1] then writeln(I:3,d[I-1]+1:4); end. 输入:8 23 结果 5 43 56 3 7 43 32 abcabc

4、 var I,n,g:integer; a:array[1..100] of integer;
第 106 页, 5 共 页

中学信息学竞赛模拟题

procedure enter; begin readln(n); for I:=1 to n do repeat read (a[I]) until a[I]>0; end; procedure find_g(a,b:integer); var gg:integer; begin gg:=a; while (a mod gg>0) or (b mod gg>0) do gg:=gg -1;g:=gg end; begin enter; g:=a[1]; for I:=1 to n do find_g(g,a[I]); writeln(‘gc=’,g); readln end. 输入:4 27 结果 3 33 90 54

四、程序完善题:共 2 题,每题 14 分,共计 28 分。 1、扑克牌问题。取一副扑克牌中所有的方块,按一定的顺序从上至下排 好,并按下面的要求逐一取 走牌:翻出最上面的一张,放在一旁,把上面的一张牌放到这叠牌的最下面;然后再翻开最上面的 一张牌,放在一旁,再把上面的一张牌放到最下面;重复上述过程,直到翻完最后一张牌。 CONST cards:string[13]=(‘A23456789JQK’); VAR link,take:array[0..13] of 1..13; Precedent,current,I,k:byte; Procedure print(I:byte); Begin If I= End; Begin For I:= (2) to 12 do link[I]:=I+1; (3) ; Link[13]:= (1) then write(‘10’) Else write(cards[I],’ ‘);

Precedent:=13; For I:=1 to 12 do Begin
第 107 页, 5 共 页

中学信息学竞赛模拟题

Current:= End;

(4)

; take[current]:=

(5)

;

Precedent:=link[precedent]; Take[precedent]:= (6) ; (7) );

Write(‘lastcard:’); print(precedent);writeln; For I:=1 to 13 do print( Writeln;readln End. 2、从三个元素(例如 1,2,3)的字符表中选取字符,生成一个有 n 个符号的序列,使得其中 没有 2 个相邻的子序列相等。如长度 n=5 的序列“12321”是合格的,而“12323”和“12123”都 是不合格的。 Const n=5; Var a:array [1..n] of integer; K,h:integer; Procedure recn(I:integer); Var j,k:integer; S:set of 1..3; Begin S:=[1..3]; For j:=1 to I-1 do If a[I]=a[j] then s:=s-[ If s<> (2) then (3) do For k:=1 to Begin A[I+1]:= Begin For j:=1 to n do Write(a[j]:3); H:=h+1; If h mod 6=0 then writeln End Else recn( End; End; Begin (6) Begin (7) Recn(1); ; For k:=1 to 3 do (5) ) (4) ; If I+1=n then (1) ];

If k in s then

第 108 页, 5 共 页

中学信息学竞赛模拟题

End; Writeln(‘h=’,h); Readln; End.

二、问题求解(共 2 题,每小题 5 分,共 10 分) 1、设一数列为 1、2、3、4、5、6 通过栈运算,能否排成顺序为 3、2、5、6、4、1 的数列? 2、闰年的条件是: (1) 能被 4 整除,但不能被 100 整除的年份是闰年,如 2004 年是闰年。 (2) 能被 100 整除,又能被 400 整除的年份是闰年如 2000 年是闰年。请求出 2000—2030 年 之间的所有闰年。 三、阅读程序,写出正确的运行结果(共 4 题,每小题 8 分,共 32 分) 1) PROGRAM p1(Output); VAR a,k:Integer; BEGIN a:=13972;k:=0; WHILE a《》0 DO BEGIN a:=a DIV 10;k:=k1 END; Writeln(k) END. 输出: 2) PROGRAM P1(OUTPUT) ; TYPE T1=(ONE,TWO,THREE,FOUR,FIVE,SIX,SEVEN,EIGHT,NINE,TEN) ; VAR X:T1;K:INTEGER; BEGIN X:=THREE; FOR K:=1 TO 5 DO X:=SUCC(X) ; WRITELN(ORD(X) ) END 输出: 3) PROGRAM PP1(OUTPUT) ; VAR A:INTEGER; FUNCTION F1(VAR A:INTEGER) :INTEGER; BEGIN A:=A*A;
第 109 页, 5 共 页

中学信息学竞赛模拟题

F1:=A—1 END; BEGIN A:=3; A:=F1(A) ; WRITELN(A) END 输出: 4)PROGRAM ABC(OUTPUT); VAR K:INTEGER; A:ARRAY[1..5]OF INTEGER; BEGIN FOR K:=1 TO 5 DO A[K]:=A[K1]A[K—1]; WRITELN(A[A],','A[4]) END 输出: 四、完善程序(共 2 题,每题 14 分,共 28 分) 1、问题描述: 从键盘输入两个数 x1,x2,判断它们是否互质。 判断两数是否互质的方法是:设大数为 x1,小数为 x2,如果 x1/x2 为整数则非互质;如果 x2 和 x1 能同时被 2——x2/2 间任一整数整除,则 x1 和 x2 也非互质。其它情况均为互质。 程序: PROGRAM sj11(Input,Output); VAR x1,x2,t,n,i:Integer; yes:Boolean; BEGIN Write('Please input x1,x2'); Readln(x1,x2); IF ( ① )THEN BEGIN t:=x1;x1:=x2;x2:=t END; yes:=True; IF (x1 MOD x2)=0 THEN yes :=False ELSE BEGIN n:=x2 DIV 2; FOR i:=2 TO ②

DO
第 110 页, 5 共 页

中学信息学竞赛模拟题

IF ③ THEN yes:=False END; IF ④ THEN Writeln('They are mutual prime numbers'){x1,x2 互质} ELSE Writeln('They are not mutual prime numbers'){x1,x2 互质} END. 2、问题描述: 孪生素数是指两个相差为 2 的素数,例如:3 和 5,5 和 7,11 和 13 等。 下面的程序可输 15 对孪生素数,其中函 F 判断整数 A 是否为素数。 程序: PROGRAM P(OUTPUT); VAR K,N:INTEGER; FUNCTION F(A:INTEGER):BOOLEAN; VAR K:INTEGER; FLAG:BOOLEAN; BEGIN FLAG:=____①______; K:=2; WHILE(k〈=A DIV 2〉AND__②______DO IF A MOD K=0 THEN ____③________ ELSE k:=K1; F:=FLAG END; BEGIN N:=0; K:=2; REPEAT IF F(K)AND ____④_____ THEN BEGIN N:=N1; WRITELN(K,K2) END; K:=K1 UNTIL n=15 END.

第 111 页, 5 共 页

中学信息学竞赛模拟题

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

1、某班有 30 个同学报名参加 100、400、800 米 3 个运动项目比赛。已知有六个人获 100 米参赛资格,8 人获 400 米参赛资格,15 人获 800 米参赛资格,且其中有 3 人全部 获 3 项参赛资格,则至少有多少人没有获任何项目参赛资格。( )

2、下列形状的三角形中,字母 a~i 分别表示数字 1,2,3,??,9

a

b

c

d

e

f

g

h

i

字母 a~i 同时满足下列条件:

a<f<i

b<d, g<h, c<e

a+b+d+f=f+g+h+i=i+e+c+a=19

试求出满足条件的三角形的个数。(



三、写运行结果(共 4 题,每题 8 分,共计 32 分)

第 112 页, 5 共 页

中学信息学竞赛模拟题

1.某程序的文档如下:

2.

键盘输入

PROGRAM

P2;

10

VAR

A:ARRAY [0..8] OF CHAR;

5 34 6 8 9 23 35 78 6 10

I:INTEGER;

屏幕将输出哪些信息

BEGIN

VAR

I, J, N:INTEGER;

FOR I:=1 TO 8 DO

X,Y:ARRAY[1..100] OF INTEGER; A[I]:=CHAR(I*2+ORD(‘A’));

BEGIN

FOR I:=1 TO 4 DO BEGIN

READLN(N);

A[0]:=A[I];

FOR I:=1 TO N DO READ(X[I]);

A[I]:=A[9-I];

FOR I:=1 TO N-1 DO

A[9-I]:=A[0];

FOR J:=I+1 TO N DO

END;

IF X[I]>X[J] THEN

FOR I:=1 TO 8 DO WRITE(A[I]);

INC(Y[I]);

WRITELN;

ELSE IF X[I]>X[J] THEN INC(Y[I]);

END.

第 113 页, 5 共 页

中学信息学竞赛模拟题

FOR I:=1 TO N DO WRITE(Y[I]:5);

WRITELN;

END.

3.某程序的文档如下。键盘输入 5,屏幕

4.

将输出哪些信息?

PROGRAM P4;

VAR

C, I, K, J,A:INTEGER;

VAR

A,B:ARRAY [1..32] OF

INTEGER;

M:ARRAY ]1..100,1..100] OF INTEGER;

I:INTEGER;

BEGIN SSORT(I,J:INTEGER);

PROCEDURE

READLN;

VAR

M,K,X:INTEGER;

C:=A*A;

BEGIN

I:=1;

IF

J-I>1 THEN

K:=(A+1) DIV 2;

BEGIN

FOR J:=1 TO C DO

M:=(I+J) DIV 2;

第 114 页, 5 共 页

中学信息学竞赛模拟题

BEGIN

SSORT(I,M);

M[I,K]:=J;

SSORT(M+1,J);

IF

J MOD A =0 THEN

K:=1;

BEGIN

FOR X:=I TO M DO

IF

I=A

THEN

BEGIN

I:=I+1 B[K+1]:=A[M+X-I+1];

B[K]:=A[X];

ELSE

I:=1;

K:=K+2;

END {THEN}

END;

ELSE

BEGIN

FOR X:=I TO J DO

IF I=1 THEN I=A

A[X]:=B[X];

ELSE I:=I-1;

END;

IF K=A THEN K:=1

END;

ELSE K:=K+1;

BEGIN

END;{ELSE}

FOR I:=1 TO 16 DO A[I]:=I;

END; {FOR}

SSORT(1,16);

第 115 页, 5 共 页

中学信息学竞赛模拟题

FOR I:=1 TO A DO

FOR I:=1 TO 16 DO WRITE(A[I]:3);

BEGIN

WRITELN;

FOR J:=1 TO A DO WRITE(M[I,J]:5);

END.

WRITELN;

END; {FOR}

end. {main}

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

1. 以下程序完成对数组每个元素向后移动 N 个单位。 数组元素的下标依次为 0 到 m-1, 对任意一个数组元素 a[i]而言,它的值移动后将存储在数组元素 a[(i+n) mod m]中。

例如,m=10,n=3,移动前数组中存储的数据如下前一行所示,则程序运行后数组中 存储的数据如下后一行所示。

0

3

86

20

27

67

31

16

37

42

16

37

42

0

3

86

20

27

67

31

程序清单:

PROGRAM T1;

CONST MAXM=10000;

第 116 页, 5 共 页

中学信息学竞赛模拟题

VAR I,K,M,N,REST,START,TEMP:LONGINT;

K:=(K+N) MOD M

UNTIL K<=START;

A:ARRAY[0..MAXM] OF LONGINT;

IF_______③______THEN

BEGIN

BEGIN

WRITE(‘INPUT M,N:’);

TEMP:=A[K];

READLN(M,N);

REPEAT

FOR I:=0 TO M-1 DO A[I]:=____①______;

A[K]:=A[(M*N+K-N) MOD M];

K:=(M*N+K-N) MOD M; WRITELN(‘BEFORE MOVE’); _______④________ FOR I:=0 TO M-1 DO WRITE(A[I]:5); UNTIL K=START; WRITELN; ________⑤________ REST:=M; START:=0; END; WHILE______②_______DO ________⑥_______ BEGIN END; K:=START; WRITELN(‘AFTER MOVE’); REPEAT

第 117 页, 5 共 页

中学信息学竞赛模拟题

FOR I:=0 TO M-1 DO WRITE(A[I]:5);

_____⑦_____;

END.

2. 求元素之和最大的子方阵: m×n 在 (m, n≤20) 的正整数数字方阵中, 找出一个 p×q 的子阵(1≤p≤m,1≤q≤n)使其元素之和最大。例如,下面 5×4 的数字阵中,元素 之和最大的一个 2×3 子阵。

5×4 数字阵

元素之和最大的 2×3 子阵为

3 11 5 10 2

8 1 21 3 7

4 7 6 8 12

22 9 2 9 3 5 10 21 3 6 8

第 118 页, 5 共 页

中学信息学竞赛模拟题

PROGRAM T2; VAR A:ARRAY[1..20,1..20] OF INTEGER; M,N,P,Q,I,J,MAX,PL,QL,S,IL,JL:INTEGER; BEGIN FOR I:=1 TO 20 DO FOR J:=1 TO 20 DO A[I,J]:=0; READLN(M,N); FOR I:=1 TO M DO BEGIN FOR J:=1 TO N DO READ(A[I,J]); READLN; END; READLN(P,Q); MAX:=O

第 119 页, 5 共 页

中学信息学竞赛模拟题

FOR I:=1 TO M-P+1 DO FOR J:=1 TO N-Q+1 DO BEGIN ______①_______; FOR IL:=I TO ____②____DO FOR JL:=J TO ____③____DO ______④_______; IF S>MAX THEN BEGIN _______⑤_______; PL:=I; QL:=J; END; END; FOR I:=PL TO ___⑥____DO BEGIN

第 120 页, 5 共 页

中学信息学竞赛模拟题

FOR J:=QL TO ___⑦____DO WRITE(A[I,J]):3); WRITELN; END; READLN; END.

第 121 页, 5 共 页


赞助商链接
更多相关文档:

信息学竞赛真题

信息学竞赛真题 - 一、单项选择题(共 15 题,每题 1.5 分,共计 22.5 分;每题有且仅有一个正确选项) 1. 从( )年开始,NOIP 竞赛将不再支持 Pascal ...

信息学奥赛训练计划(袁森龙)

信息学奥赛训练计划(袁森龙)_教学案例/设计_教学研究_教育专区。2016~2017 年...(二) 选择结构(一) 选择结构(二) 循环结构(一) 循环结构(二) 循环结构(三...

怎样做好信息学奥赛培训辅导

最终从学生考学的角度选择信息学奥赛编 程。 2、我对信息学奥赛的了解 青少年信息学(计算机)奥林匹克竞赛(早期称为青少年计算机程序设计竞赛)是旨在广 大青少年...

2015年广东省青少年信息学竞赛广州市选拔赛

2015 年广东省青少年信息学竞赛广州市选拔赛 2015 年广东省青少年信息学竞赛广州...你的任务是把两个字符串的所有字符消除掉,每次执行消除, 你可以选取使用下列的...

信息学奥赛基础知识习题(答案版)

信息学奥赛基础知识习题(答案版) 一、选择题(下列各题仅有一个正确答案,请将你认为是正确的答案填在相应的 横线上) 1. 我们把计算机硬件系统和软件系统总称为...

信息学奥赛基础知识习题(答案版)

信息学奥赛基础知识习题(答案版) 一、选择题(下列各题仅有一个正确答案,请将你认为是正确的答案填在相应的横线上) 1. 我们把计算机硬件系统和软件系统总称为 ...

第15届信息学奥赛的初赛选择与问题求解分析

第15届信息学奥赛的初赛选择与问题求解分析 - 第十五届全国青少年信息学奥林匹克联赛初赛试题 ( 普及组 Pascal 语言 二小时完成) ●● 全部试题答案均要求写在...

全国青少年信息学(计算机)奥林匹克分区联赛模拟试题附...

全国青少年信息学(计算机)奥林匹克分区联赛模拟试题附参考答案 - 全国青少年信息学(计算机)奥林匹克分区联赛模拟试题 一、单项选择题: 1、人们在谈论计算机的时候,...

NOIP信息学奥赛历年选择题专辑

NOIP信息学奥赛历年选择题专辑 - 1 新会一中 NOIP 历年选择题专辑 第八届(选择题) 一. 选择一个正确答案代码(A/B/C/D) ,填入每题的括号内(每题 1.5 分...

第23届2008年宁波市信息学竞赛初赛试题 含答案

第23 届 2008 年宁波市信息学竞赛初赛试题( 小学组 Pascal 语言 二小时完成)●● 全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效 ●●一、 单项选择题...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com