版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、2008年泉州五中信息技術興趣小組PASCAL語言測試題班級座號姓名一判斷題(每小題1分,共10分)( )1a:=3; b:=5; if a=3 and b=5 then write(true);( )2var n:integercase n of1,3,5 : writeln(odders);2,4,6 : writeln(evener);3,4,7 : writeln(other)end; ( )3var b:boolean; i,n:integer;b:=true;for i:=2 to n/2 doif n mod i=0 then b:=false; ( )4procedure pa
2、(n:integer):integer;( )5var a,b:recordx,y:realend;if a=b then writeln(all value is equal);( )6const c=100 or 50;( )7var i,j,k=integer; ch1:char; ch1:boolean;( )8function pa(n:integer);( )9const a=20; a,b=20;( )10var flag:boolean; read(flag); 二不定項選擇題(每小題1分,共15分)( )1假設變量b、c的聲明情況如下,選出下面正確的賦值var c:char;
3、 b:boolean;ac:=1998; bc:=1;cb:=true;dc:=1;( )2選出下面正確的表達式。 a3<>5 and 5-3=2b 5+3cchr(ord(b)d ord(2)/2 mod 2( )3已知有數組說明: var a:array 1.10 of integer; a中的值如下表所示:a1a2a3a4a5a6a7a8a9a101124377141042執(zhí)行語句writeln(aa7 div a3)后的輸出是a4b7 c1d12 ( )4假設變量p、q、r、s的聲明情況如下所述,且p、q、r、s都已賦值
4、,選出下面正確的表達式。var p,q:integer; r,s:real; ap:=q bp<>r cp:=r dq<>s( )5假設變量a和s按如下情況聲明,且a和s已賦值,選出正確的表達式。var s:set of 1.5; a:set of a.e; aa<>sbas= ca<> d not a in s( )6設有過程首部:procedure f(var x:integer;y:real); 若a,b:integer; c:real; 則合法的調用語句是af(2,3)
5、160;bf(2,3.0) cf(a+b,c)df(b,2)( )7設有一函數定義如下:function high(x,y:integer):integer; begin high:=x-(x+y) div (x-y) end; 執(zhí)行語句t:=high(4,high(6,high(4,1)后,變量t的值是a3 b-3c1d0 ( )8分析下面的程序,判斷a,b,c,d
6、對應的4種語句中,正確的是program pro(input,output); type day=(mon,tue,wed,thu,fri); var ah:(x1,x2,x3,wed); w1,busy:day; beginbbusy:=mon;creadln(w1); dwriteln(w1) end.( )9設a, b , c, d均為整型變量,有
7、下面的程序段:a:=10;b:=0; read(a, b); readln(c); readln(d); 若從鍵盤輸入:7 <cr>6 5 4<cr> 3 2 1<cr> (注:<cr>表示回車) 則a、b、c、d中的數是。a7 0 6 3b7 6 5 4 c7 6 3 2 d7 6
8、60;5 3 ( )10已知有說明var x:real;下列程序段中錯誤的是。case x<=2.0 of0:x:=0;1:x:=1; end; a情況表達式中有常數b情況常量與情況表達式類型不一致c情況表達式為關系d賦值語句兩邊類型不一致 ( )11有下列程序 program print(input,output); var ch1,ch2,ch3:char; beginreadln(ch1); readln(ch2,ch2);
9、0; readln(ch3,ch3,ch3); writeln(ch1,ch2,ch3)end.若運行時輸入red<cr>yellow<cr>blue <cr>則正確的輸出是arybbreucrdldblu( )12下列程序段中,循環(huán)體執(zhí)行的次數為i:=1; repeat n:=i*i; i:=i+1until n>i; a1b2c3d4( )13下圖為某鏈表的一部分,下列程序段可以實現釋放q所指向的結點是ap.next:=r; dispose(q);bp:=r; dispos
10、e(q);cp.next:=q.next; dispose(q);dp:=q.next; dispose(q);( )14執(zhí)行后a的值與其他三個程序段不相同的是aa:=0;
11、0; b a:=0;i:=1; i:=1;
12、60; while i<=5 do repeat
13、0; begin i:=i+1;
14、60; a:=a+1; a:=a+1 &
15、#160; i:=i+1until i>6;
16、 end; ca:=0; &
17、#160; da:=0;i:=1;for i:=1 to 5 do repeata:=a+1;
18、160; i:=i+1; &
19、#160; &
20、#160; a:=a+1 &
21、#160; until i>5; ( )15設有說明:type arr=array1.10 of integer;ptr=arr;var p:ptr; 若已執(zhí)行了new(p),下面合法的賦值語句是ap2:=10; bp2:=10;cp:=10;dp2:=10;三、填空題(每空1分,共15分) 1var a:array 1.10,a.e of char; a中有_個元素,每個元素是_類型。
22、 2var tool:(bike,car,motor,bus); pred(car)=_;succ(car)=_。3var p,q:integer;new(p); q:=nil;表達式p<>q的值是_,表達式p=q的值是_。4input是free pascal默認的輸入設備,默認指向鍵盤,現要更改input的指向,欲讓它指向文本文件pas.in,則需用語句來實現;打開被input關聯(lián)的實際文件pas.in,準備讀取pas.in文件的內容需用語句實現。5隨機產生150200之間的整數的表達式是 。6如果x:=, y:= copy(x,4,5),那么y的結果為 ;length(x)的結
23、果是 。7設有集合a1,2,3,4,b1,3,5,7,c3,那么(a*b)c的值是 ,c*a+b的值是 。8設整型變量i和j的值分別為2和3,布爾變量b的值為true。表達式b(ji2) AND NOT (ij) 0R (i3 AND b的值9寫出將字符6轉換成數字6的Pascal表達式四、簡答題(2分+2分+3分+3分,共10分。) 1寫一個表達式,若x滿足10-7<|x|<107,則表達式取值true,否則,取值false。(3分)2寫一個程序片段,計算1至100中能被3整除的所有整數之和。(2分)3設有一函
24、數子程序定義如下:function f(x,y,z:integer):integer; begin f:=z-y div x;end;執(zhí)行語句cal:=f(f(2,4,6),6,8)后,變量cal的值。(2分)4var a:array1.4,1.4 of real ; 寫一程序片段,用賦值語句(即不用read過程),將下面的矩陣賦給a中元素。(3分)1.15.2 9.3 13.42.1 6.2 10.3 14.43.1 7.2 11.3 15.44.1 8.2 12.3 16.4五閱讀程序,寫出輸出結果 (每小題4分,共20分)1(4分)program exam_51;
25、var i,j:integer;a,b:array1.5 of integer;beginfor i:=1 to 5 dobeginai:=2*i-1;bi:=iend;for i:=1 to 5 dofor j:=1 to 5 doif ai=bj then write(ai:4)end.輸出:2(4分)program exam_52;var n,i,tem,t:longint; s:string;begin readln(n); s:='1' repeat i:=length(s); while si='1' do begin si:='0'
26、 dec(i); end; if i>0 then si:='1' else s:='1'+s; val(s,t,tem); until t mod n=0; writeln(n,'*', t div n,'=',s);end.輸入:6輸出:3(4分)program exam_53; var a,b,c : integer;procedure p (var x:integer; y:integer);var temp:integer;begintemp:=x div y+c;x:=temp;writeln(x:4,y:4,t
27、emp:4)end;begina:=9;b:=2;c:=3;p(a,b);writeln(a:4,b:4,c:4)end.輸出:4(4分)program exam_54;type pointer=node; node=record n:integer; next:pointer end;var i:integer; head,p,q:pointer;procedure make(var head:pointer; key:integer);var p,q,r: pointer;begin p:=head; while (key>=p.n) and (p.next<>nil)
28、do begin q:=p;p:=p.next end; new(r); r.n:=key; if key<head.n then begin r.next:=head; head:=r end else if key<p.n then begin r.next:=p; q.next:=r end else begin p.next:=r; r.next:=nil endend;procedure wlink(head:pointer);var p:pointer;begin p:=head; while p<>nil do begin write(p.n:4); p:
29、=p.next; end;end;begin head:=nil; i:=1; while i<=5 do begin new(p); p.n:=2*i; if head=nil then head:=p else q.next:=p; q:=p; i:=i+1 end; q.next:=nil; wlink(head); make(head,20); wlink(head)end.輸出:5(4分)program exam_55;var a,b:array 1.32 of integer; i:integer;procedure ssort(i,j:integer);var m,k,x:
30、integer;begin if j-i>1 then begin m:=(i+j) div 2; ssort(i,m); ssort(m+1,j); k:=i; for x:=i to m do begin bk:=ax; bk+1:=am+x-i+1; k:=k+2; end; for x:=i to j do ax:=bx; end;end;begin for i:=1 to 16 do ai:=i; ssort(1,16); for i:=1 to 16 do write(ai:3);end.輸出:六、程序填空(每空2分,共44分)1(12分),降序組合。給定兩個自然數n,r(n
31、>r),輸出從數到n中按降序順序取r個自然數的所有組合。例如,n5,r3時,輸出的結果是:5 4 35 4 25 4 15 3 25 3 15 2 14 3 24 3 14 2 13 2 1程序中用a1,a2,ar表示一個降序排列的r個數的組合,要求a1>=r。為了能夠窮舉出全部降序排列的個數的組合,按遞減順序調整前一個組合的部分元素生成下一個組合,調整時,當a1=1就要回朔。上例由回朔生成下一個組合的情況,有541532,531521,521432(二次回朔),431421,421321(二次回朔)。上述過程,當a1r1時結束。程序program exam_61;var n,r,
32、i,j:integer; a:array1.20 of integer;beginwrite('n,r=');repeat readln(n,r);until n>r;i:=1;a1:=n;writeln('result:');repeat if i<>r then if _ then begin ai+1:= _;i:=i+1; end else begin _;_; end else begin for j:=1 to r do write(aj:3); writeln; if ar=1 then begin i:=i-1;ai:=ai-1
33、; end else _; enduntil _;end.2(14分)以下程序是將一組整數按從小到大的順序排列。排序的方法是將長度為n的數a分為兩個長度分別為(n div 2)與(n-n div 2)的子數組a1,a2。然后遞歸調用過程,將a1,a2分別排序,最后將a1,a2歸并成數組a。例如a=(3,1,2,4),那么a1=(3,1),a2=(2,4)。調用排序過程將a1,a2排序,得到a1=(1,3),a2=(2,4)然后進行合并排序。從鍵盤輸入數的長度n以及n個整數,存在數組a中,調用子過程sort進行排序,最后輸出排序結果。program exam_62;const maxn=100;
34、type arr=array1.maxn of integer;var n,i:integer; a:arr;procedure sort(n:integer;var a:arr);var i,p1,p2,n1,n2:integer; a1,a2:arr;begin if n=1 then exit; fillchar(a1,sizeof(a1),0); fillchar(a2,sizeof(a2),0); n1:=0;n2:=0; n1:=n div 2;n2:=; for i:=1 to n1 do a1i:=ai; for i:=1 to n2 do a2i:= ; ; sort(n2,
35、a2); p1:=1;p2:=1; n:=0; while (p1<=n1) and do begin n:=n+1; if then begin an:=a1p1;inc(p1);end else begin ;inc(p2);end; end; if p1<=n1 then for i:= to n1 do begin n:=n+1;an:=a1i; end else for i:=p2 to n2 do begin n:=n+1;an:=a2i;end;end;begin write('n=');readln(n); for i:=1 to n do read
36、(ai); readln;sort(n,a); for i:=1 to n do write(ai,' '); writeln;end.3(8分)有(1<=n<=100)個同學種m(1<=n<=m<=100)種小樹苗,例如:4個同學每小時種4種樹苗的數量估算如下表所示,編程輸出每人種1種苗所用的總時間最少的安排方案和所花費的時間。學生 苗樹abcd15245243533524243233program exam_63;const maxn=100;maxm=100;var a:array 1.maxn,1.maxm of integer; m,n:
37、integer; i,j,t:integer;procedure work(k,t1:integer);var i:integer;begin if then begin if t1<t then t:=t1; exit; end; for i:= to do work(k+1,);end;begin readln(n,m); for i:=1 to n do begin for j:=1 to m do read(ai,j); readln; end; t:=maxint; work(1,0); writeln(t);end.4(10分)程序的任務是用0.9中的數字填入如下乘法運算的*
38、處,數字可重復使用,且所用的數字至少有一個是素數,要求輸出滿足下列算式的方案數。輸入:n,10 n1輸入:n個0.9的不同數字t輸出:方案數 * * * * * * * * * * * * * * *program exam_64;const p:set of 0.9=2,3,5,7;var s:set of 0.9; n:integer; ans:longint;procedure init;var i:integer; t:byte;begin readln(n); s:= ; for i:=1 to n do begin read(t); s:=s+t; end;end;function ok(x,l:integer):boolean; 此函數判斷x是否符合條件var t:byte;begi
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度民辦學校教師教學科研獎勵聘用合同4篇
- 2025版高端汽車零部件模具定制合同4篇
- 二零二五年度企業(yè)電子商務法律風險防范合同
- 2025版砂石開采與環(huán)保治理合同3篇
- 二零二五年度人才招聘居間服務合同范本(航天行業(yè)適用)2篇
- 二零二五年度圖書館建筑裝飾工程合同范本2篇
- 3 關節(jié)置換術止血與抗凝的綜合管理
- 二零二五年度裝配式內裝工程承包合同范本4篇
- 2025年度臨街商店攤位租賃與垃圾分類處理合同3篇
- 二零二五年度企業(yè)形象宣傳片創(chuàng)意策劃與執(zhí)行合同
- 2023-2024學年度人教版一年級語文上冊寒假作業(yè)
- 2024醫(yī)療銷售年度計劃
- 稅務局個人所得稅綜合所得匯算清繳
- 人教版語文1-6年級古詩詞
- 上學期高二期末語文試卷(含答案)
- 軟件運維考核指標
- 空氣動力學仿真技術:格子玻爾茲曼方法(LBM)簡介
- 2024版醫(yī)療安全不良事件培訓講稿
- 中學英語教學設計PPT完整全套教學課件
- 移動商務內容運營(吳洪貴)項目五 運營效果監(jiān)測
- 比較思想政治教育學
評論
0/150
提交評論