2003年第九届noip初赛试题 提高组.doc_第1页
2003年第九届noip初赛试题 提高组.doc_第2页
2003年第九届noip初赛试题 提高组.doc_第3页
2003年第九届noip初赛试题 提高组.doc_第4页
2003年第九届noip初赛试题 提高组.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2003年第九届NOIP初赛试题(提高组) 发布日期: 2006-01-22 访问总次数: 4240 第九届分区联赛提高组初赛试题(提高组 PASCAL 语言 二小时完成) 全部答案均要写在答案卷子上,写在试卷纸上一律无效 一.单项选择题 (共10题,每题1.5分,共计15分。每题有且仅有一个正确答案.)。1. 图灵 (Alan Turing) 是 ( )。 A) 美国人 B) 英国人 C) 德国人 D) 匈牙利人 E) 法国人2. 第一个给计算机写程序的人是( )。 A) Alan Mathison Turing B) Ada Lovelace C) John von Neumann D) John Mc-Carthy E) Edsger Wybe Dijkstra3. 十进制数2003等值于二进制数( )。 A) 0100000111 B) 10000011 C) 110000111 D) 11111010011 E) 11110100114. 假设A=true,B=false,C=ture,D=ture,逻辑运算表达式ABCD的值是( )。 A) ture B) false C) 0 D) 1 E) NULL5. 一个高度为h 的二叉树最小元素数目是( )。 A) 2h+1 B) h C) 2h-1 D) 2h E) 2h-16. 已知队列(13,2,11,34,41,77,5,7,18,26,15),第一个进入队列的元素是13,则第五个出队列的元素是( )。 A) 5 B) 41 C) 77 D) 13 E) 187. 下面一段程序是用( )语言书写的。 int func1(int n) int i,sum=0; for(i=1;i y) then begin z := z + (b - y + 8) div 9; x := (b - y + 8) div 9 * 9 -(b - y) * 4 + 11 * e + vc mod 4; end else x := (y - b) * 4 + 11 * e + vc mod 4; if (a x) then z := z + (a - x + 35) div 36; writeln(z) end.输入: 4 7 9 20 56 47 输出_3. program Program3;var m,n: integer; mark: Boolean;function test(m,N:integer):integer; var i,p: integer; flag: boolean; begin m := m - 1; i := 0; flag := False; for p:= 2*N downto (N+1) do begin i:= (i+m) mod p; if (i begin test := 0; flag := Ture; Break; end end; if not(flag) then test:=1; end;begin read(n); m:=1; Mark := False; repeat if (test(m,n)=1) then begin writeln(m); break; end; m:= m+1; until Mrak;end.输入:7 输出_4. program Program4;var m,n,i,j: integer; p,w,a,b: array0.19 of integer;begin read(n); m:= 0; for i:= 0 to n-1 do begin read(pi); bi:=1; end; for i:=0 to n-1 do begin if (i0) then am:=pi-pi-1 else am:=pi; m:=m+1; while (m1) and (am-1=0) do begin m:=m-1; bm:=1; end; if (m0) then wi:=bm-1; else wi:=b0;am-1:=am-1-1;for j:=0 to m-1 do bj:=bj+1; while (m1) and (am-1=0) do begin m:=m-1; bm:=1; end;end; for i:= 0 to n-1 do begin write(wi); write( ); end; writeln( ); end.输入:9 4 6 6 6 6 8 9 9 9 9 输出:_五. 完善程序(共2题,第1题每空3分;第2题每空2分。共计28分)。1. 翻硬币题目描述: 一摞硬币共有m枚,每一枚都是正面朝上。取下最上面的一枚硬币,将它翻面后放回原处。然后取下最上面的2枚硬币,将他们一起翻面后放回原处。在取3枚,取4枚直至m枚。然后在从这摞硬币最上面的一枚开始,重复刚才的做法。这样一直做下去,直到这摞硬币中每一枚又是正面朝上为止。例如,m为1时,翻两次即可。输 入:仅有的一个数字是这摞硬币的枚数m ,0 m 1000。输 出:为了使这摞硬币中的每一枚都是朝正面朝上所必须翻的次数。输入样例:30输出样例:899程 序: program Program1; var m:integer; function solve(m: integer):integer; var i,t,d: integer; flag: Boolean; begin if (m = 1) then solve := (1) else begin d := 2*m+1; t := 2; i := 1; flag := False; repeat if (t = 1) then begin solve := (2) ; flag := True; end else if ( (3) ) then begin solve := i*m-1; flag := True; end else t := (4) ; i:=i+1; until flag; end end; begin read(m); if ( (5) ) and (m=0) then begin nth:=nth-m1,k,s; if (yh) then (2) ; picy,x:=UP; y:=y+1; x:=x+1; draw( (3) ); end else begin y:=y - 1; picy,x:=DN; x:=x+1; draw(k-1,s-1,nth); end; end; begin init; read(nth); for e:=0 to SZ-1 do for f:=0 to SZ-1 do pice,f:= ; x:=0; y:=0 h:=0; i:=0; while (nth-m0

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论