全国信息学奥林匹克模拟试题一.doc_第1页
全国信息学奥林匹克模拟试题一.doc_第2页
全国信息学奥林匹克模拟试题一.doc_第3页
全国信息学奥林匹克模拟试题一.doc_第4页
全国信息学奥林匹克模拟试题一.doc_第5页
已阅读5页,还剩1页未读 继续免费阅读

付费下载

下载本文档

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

文档简介

全国信息学奥林匹克模拟试题(一)(普及组PASCAL语言二小时完成 满分100分)一、选择一个正确答案代码(A/B/C/D),填入每题的括号内(每题1.5分,多选无分,共30分)1、MAN英文缩写的含义是()A.局域网 B.城域网 C.广域网 D.增值网2、小张用十六进制,八进制和十进制写了如下一个等式:6413=33式中三个数是各不相同进位制的数,试问64,13,33,分别为_。A八进制,十进制,十六进制 B十进制,十六进制,八进制C八进制,十六进制,十进制 D十进制,八进制,十六进制3、表达式(4 MOD (3)与(4 MOD 3)的值为:_。A1,1 B1,1 C1,1 D1,14、试指出:下列if语句中,当x=80时, 运行的结果为_。beginy:=0;readln(x);if x0 then y:=5else if x10 then begin y:=10; if xrj) and (j0) do begin rj+1:=rj;j:=j-1;end; rj+1:=k; end;for I:=1 to n do write(rI,);writelnend.键盘输入: 8 4 9 3 5屏幕输出:program exp2;var a,b,f:integer; function gd(m,n:integer):integer;beginif 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 :ARRAY0.5 OF INTEGER;BEGINS:=1; FOR I:=1 TO 5 DO BI:=I; J:=1; WHILE J0 DO BEGIN J:=5; WHILE (J0) AND (BJ=10+J-5) DO J:=J-1; IF J0 THEN BEGIN S:=S+1; BJ:=BJ+1; FOR i:=J+1 TO 5 DO Bi:=BJ+i-J END; END; WRITELN(S=,S);END.4、program exp4(input,output);varm,n,g:integer;function gcd(m,n:integer):integer;beginif n=0 then gcd:=m else gcd:=gcd(n,m mod n)end;beginread(m,n);g:=gcd(m,n);writeln(m=,m,n=,n,gcd=,g)end.输入:48 9输出:三、问题解答(第1题每空4分,第2题8分)1、数据结构中,下面是一个树结构图,这个树的先序遍历结果是_,中序遍历结果是:24 8 +3 *4 10 7 -*/2、给出一个后缀算术表达式为写出对应的中缀算术表达式:_四、完善程序(第一题每空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。const maxlength=100;var a:array1.maxlength of integer; i,maxi,n,s,t:integer;begin write(n=);readln(n); for i:=1 to n do read(ai); readln; maxi:=0; t:= 1 s:=1; for i:=2 to n do if ai=t then 2 else begin if smaxi then maxi:=s; t:=ai; 3 end; 4 writeln(maxi=,maxi);end.2、1000!尾0问题以下程序用于统计1000!末尾有多少个0。其中1000!=1231000。实际上我们只要统计1000!有多少个因子10。由于10=52,因而只需统计有多少个因子5和2。显然在11000的所有数中,5的因子个数比2的因子个数少。因此,只要统计11000的所有数中共有多少个因子5就行了。var i,j,n:integer;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)即为所求元素。如果jk,则第k个元素必在区间1,j,因此取A1,Aj为新的元素集合,然后重复上述的”部分排序”的过程。如果jk,则第k个元素必在区间j+1,n,因此取Aj,An为新的元素集合,重复过程。直至j=k为止。程序清单var j,k,n:integer; a:array1.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 ; RepeatWhile aIm do inc(i);While maj do 8 ;If I=j;If I=k then exit;If 9 then search(b,j) else search(j+1,e)End;procedure 10 var I:integer; beginfor I:=1 to n do write(aI,);writeln;writeln(

温馨提示

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

评论

0/150

提交评论