16鄞州区小学生信息学奥林匹克试题.docx
- 文档编号:4953982
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:19
- 大小:26.05KB
16鄞州区小学生信息学奥林匹克试题.docx
《16鄞州区小学生信息学奥林匹克试题.docx》由会员分享,可在线阅读,更多相关《16鄞州区小学生信息学奥林匹克试题.docx(19页珍藏版)》请在冰点文库上搜索。
16鄞州区小学生信息学奥林匹克试题
鄞州区小学生信息学奥林匹克竞赛试题
(小学组PASCAL语言2.5小时完成)
一.选择一个正确答案代码(A/B/C/D),填入每题的括号内(每题1分,每题只有一个正确答案,多选或错选都无分。
共30分)
1.结构化程序的结构由三种基本结构组成,下面()不属于这三种基本结构?
(A)顺序结构(B)输入输出结构(C)分支结构(D)循环结构
2.下列中合法的PASCAL标识符是()。
(A)A1B2C3(B)FOR(C)2AB(D)A[1]
3.下面()是Pascal数。
(A)73e4(B)-e4(C)36.74-e6(D)1,742,258
4.下面()是实数。
(A)10(B)0.0(C)’0’(D)0
5.下面有效的Pascal字符型数据是()。
(A)’Thisis(B)6(C)Y(D)’’’’
6.下面常量定义中正确的是()。
(A)constd=40ord=100(B)consts:
0.5(C)consts=2.15(D)consts:
=(2>5);
7.下列变量说明中,不合法的是()。
(A)vara=real;(B)varr:
Real(C)varred:
Integer(D)vari1,i2:
Integer;
8.下列函数值是整型的是()。
(A)chr(23)(B)ord(false)(C)succ(false)(D)odd(98)
9.下列函数值不可能是布尔类型的是()。
(A)odd(x)(B)ord(x)(C)pred(x)(D)succ(x)
10.表达式35div3mod4的值是()。
(A)0(B)2(C)3(D)6
11.下列中正确的关系表达式是()。
(A)’a’<100(B)23.5<20(C)23<46and72>8(D)5 12.下列()程序行是对的。 (A)x: =y: =5;(B)a+b: =c3(C)y: =1;y: =y+1;(D)i: =x10’’; 13.下列程序段运行后,变量value的值为()。 X: =20; IfX>=10thenvalue: =5*Xelsevalue: =4*X; (A)100(B)80(C)90(D)70 14.下列程序段运行后,变量max的值为()。 a: =5;b: =10;max: =a; ifb>maxthenmax: =b; (A)5(B)10(C)5和10(D)以上都不是 15.下列程序段中,循环体执行的次数为()。 I: =1; REPEAT N: =I*I; I: =I+1; UVTILN>I; (A)1(B)2(C)3(D)4 16.求10的阶乘值。 应选用程序段()。 (A)p: =1; FORn: =1TO10DO REPEAT p: =p*n; n: =n+1 UNTILn>=10 writeln(p); (B)p: =1;n: =1; WHILEn<10DO BEGIN p: =p*n; n: =n+1 END; writeln(p); (C)p: =1; FORn: =1TO10DO BEGIN p: =p*n; n: =n+1 END; writeln(p); (D)p: =1; FORn: =1TO10DO p: =p*n; writeln(p); 17.下列循环语句能构成有限次循环的是()。 (A)i: =10; REPEAT writeln(i); i: =i+1; UNTILi>0; (B)i: =10; REPEAT writeln(i); i: =i+1; UNTILi=10; (C)i: =0; REPEAT writeln(i) i: =i-2 UNTILi>0; (D)i: =10; REPEAT writeln(i); UNTILi=1; 18.已知x=10,y=20,z=30,以下程序段执行后x,y,z的值应是()。 IFx>y THENz: =x;x: =y;y: =z; (A)x=10,y=20,z=30(B)x=20,y=30,z=30 (C)x=20,y=30,z=10(D)x=20,y=30,z=20 19.设A,B,C为整型变量,并有以下程序段: READ(A);READLN(B,C); READLN(C,B);READLN(A,B); WRITELN(A: 2,B: 2,C: 2); 若运行时输入: 123 456 789 则输出是()。 (A)123(B)147(C)783(D)784 20.下列表达式中,其值为TRUE的是()。 (A)150>=150(B)100>150 (C)ABS(-200)<>200(D)SUCC('A')>SUCC('A') 21.已知R1,R2是实型变量,I1,I2是整型变量,下列中错误的赋值语句是()。 (A)I2: =I1+I2DIVI1(B)I1: =I1/I2 (C)R2: =3/5*SQR(R1+R2)(D)R1: =R2+I1 22.有变量说明: VARI1,I2: INTEGER; R1,R2: REAL; B1,B2: BOOLEAN; 设各变量均已赋值,下列语句中无语法错误的是()。 (A)B2: =ORD(R1>R2) (B)I2: =I1+R1 (C)B1: =I1=I2 (D)B1: =B1+B2 23.设有变量说明: VARAA: (C,G,A,J,K);则函数SUCC(A)的取值是()。 (A)G(B)3(C)J(D)B 24.设有程序 PROGRAMexam(Input,Output); Varch1,ch2,ch3: Char; BEGIN Readln(ch1,ch2,ch3); Readln(ch1,ch2); Readln(ch1); Writeln(ch1,ch2,ch3) END. 运行以上程序时,若输入为: abc def ghi 则输出是()。 (A)abc(B)gec(C)ceg(D)adg 25.表达式TrueANDNOTOdd(-202)<(7-3<=4)的值是()。 (A)True(B)False(C)0(D)1 26.当同时满足a=b时把n赋给m,应选用的程序段是()。 (A)ifa ifc=dthenx: =y elsem: =n (B)ifa begin ifc=dthenx: =y elsem: =n end (C)if(a thenx: =y elsem: =n (D)ifa begin ifc=dthenx: =y end elsem: =n 27.有下列程序 PROGRAMAA; VARN: INTEGER; B,T: REAL; BEGIN T: =1;B: =1;N: =2; REPEAT B: =B*N; T: =T+B; N: =N+1; UNTILN>19 END 该程序运行后,变量T中的值是下列()公式的结果 (A)20! (B)19! (C)1! +2! …19! (D)1! +2! +…20! 28.设有下面四个循环程序段 (1)A: =0; I: =1; REPEAT I: =I+1; A: =A+1; UNTILI>6; (2)A: =0;I: =1; WHILEI<=5DO BEGIN A: =A+1; I: =I+1; END; (3)A: =0; FORI: =1TO5DO A: =A+1; (4)A: =0;I: =1; REPEAT I: =I+1; A: =A+1; UNTILi>5; 有三个程序段执行后A的值相同,另一个不同的是()。 (A) (1)(B) (2)(C)(3)(D)(4) 29.下面的输出语句中错误的语句是() (A)Writeln('''$''isusedtomean''USdoller'''); (B)Writeln('Theword''china''hasfiveletters'); (C)Writeln('Thesign''$''isusedtomean''USdoller'''); (D)Writeln('Theword'china'hasfiveletters'); 30.欲输出被2,3,5除余数均为1的最小的10个正整数,下列不能实现此功能的程序是()。 (A)PROGRAMX1(INPUT,OUTPUT); VARCOUNTER,NUMBER: INTEGER; BEGIN COUNTER: =0; NUMBER: =0; REPEAT NUMBER: =NUMBER+1; IF(NUMBERMOD2=1)AND(NUMBERMOD3=1)AND(NUMBERMOD5=1) THENBEGIN WRITELN(NUMBER); COUNTER: =COUNTER+1 END UNTILCOUNTER=10; END. (B)PROGRAMX2(INPUT,OUTPUT); VARCOUNTER,NUMBER: INTEGER; BEGIN COUNTER: =0; NUMBER: =0; WHILECOUNTER<10DO BEGIN NUMBER: =NUMBER+1; IF(NUMBERMOD2=1)AND(NUMBERMOD3=1)AND(NUMBERMOD5=1) THENBEGIN WRITELN(NUMBER); COUNTER: =COUNTER+1 END END END. (C)PROGRAMX3(INPUT,OUTPUT); VARCOUNTER,NUMBER: INTEGER; BEGIN NUMBER: =1; FORCOUNTER: =1TO9DO BEGIN WRITELN(NUMBER); NUMBER: =NUMBER+2*3*5 END; WRITELN(NUMBER) END. (D)PROGRAMX4(INPUT,OUTPUT); VARCOUNTER,NUMBER: INTEGER; BEGIN NUMBER: =1; FORCOUNTER: =1TO10DO BEGIN NUMBER: =NUMBER+2*3*5 WRITELN(NUMBER); END; WRITELN(NUMBER) END. 二.填空题: (10分) 1.表达式10*4mod5*22/4*5的值是。 2.根据以下叙述内容,选择相应题号归类填写: (1)当布尔表达式的值为true时不再执行循环体。 (2)当布尔表达式的值为false时不再执行循环体。 (3)循环的特点是先判断,后执行,可能一次也不执行循环体。 (4)循环的特点是先执行,后判断,至少执行一次循环体。 (5)循环体中的语句成分个数超过一个的时候,必须构成复合语句。 (6)循环体中的语句成分个数超过一个的时候,不需要构成复合语句。 归类填写: 当型循环while。 直到型循环repeat。 3.i是j的整数倍的布尔表达式, m是偶数的布尔表达式是, y是闰年的布尔表达式是。 4.有一编码规则如下: 原码: ABC……XYZ 密码: ZYX……CBA 已知原码变量为x,则密码的表达式是。 三.阅读程序并写出运行结果(运行结果有涉及到空格的,请用‘﹂’表示;其中第6题写出计算公式。 5*6=30分。 ) 1.programex1(input); var a,b: integer; c,d: Boolean; begin a: =8;b: =7; c: =odd(a);d: =odd(b); writeln(‘c=’,c); writeln(‘d=’,d); ifa>bthen begin ifc=dthenwrite(c); elsewrite(d); end end. 输出: 2.programex2(input,output); var t,s,i: integer; begin t: =0;s: =0; fori: =-5to5do begin t: =t+1; s: =s+t+i; end; writeln(‘t,s=’,t,s: 10); end. 输出: 3.programex3(input,output); var n,a: integer; begin n: =6; whilen>1do begin a: =1; repeat write(‘$’); a: =a+1; untila>=n; writeln; n: =n-1; end end. 输出: 4.programex4(input,output); var i,j,k,s: integer; begin s: =0; fori: =3downto1do begin forj: =1to3do begin k: =0; repeat k: =k+1;s: =s+k; untilk=j; end; s: =s-(k+1); end; write(‘s=’,s); end. 输出: 5.programex5; vard1,d2,x,min: real; begin min: =10000;x: =3; whilex<15do begin d1: =sqrt(9+(x-3)*(x-3)); d2: =sqrt(36+(15-x)*(15-x)); if(d1+d2) =d1+d2; x: =x+0.001; end; writeln(min: 10: 2); end. 输出: 6.e: =1; a: =1; forn: =1to10do begin a: =a*x/n; e: =e+a; end; 计算公式: 四.完善程序(根据问题要求和已有程序,在空格处填入适当的语句或符号,使程序完整。 本题共30分。 2*15=30。 ) 1.求100—200之间的所有素数。 【分析】我们可对100—200之间的每一整数进行判断,判断它是否为素数,是则输出。 而对于任意整数i,根据素数定义,我们从2开始,一直找i的第一个约数。 若找到第一个约数,则i必然不是素数。 否则i为素数。 【程序】 programex2; var i,x: integer; begin fori: =100to200do begin (1); while(x<=trunk(sqrt(i))and (2)do beginx: =x+1;end; if(3)thenwrite(i: 8); end; end. 2.从七张扑克牌中任取3张,有几种组合方法? 并输出所有组合形式。 设每次取出三张分别为a,b,c,从1——7的范围里取值。 【输出要求】先输出每种组合形式,样例: a=1,b=2,c=3 再输出共有几种组合。 【程序】 Programex1; Const (1); Var a,b,c,t: integer; Begin t: =0; fora: =1tondo forb: =1tpndo forc: =1tondo if (2)then begin inc(t); (3) end; (4) readln end. 3.把整数3025从中剪开分为30和25两个数,此时再将这两个数之和平方(30+25)2=3025,计算结果又等于原数。 求所有符合这样条件的四位数。 【程序】 programex3; varN,a,x,n1,n2: integer; begin fora: =32to (1)do begin N: =a*a; n1: = (2); n2: =(3); x: =n1+n2; if(4)thenwriteln(N); end; readln end. 4.有一头母牛,它每年年初生一头小母牛。 每头小母牛从四岁起,每年年初也生一头小母牛。 问在第二十年时,一共有多少头牛? 一1 二1+小=2 三2+小=3 四3+小=4 五4+小=5 六5+小小=7 七6+小小+1小=10 八7+小小+2小+1小=14 九8+小小+3小+2小+1小=19 十9+小小+4小+3小+2小+12*小=26 【程序】 programex4; var a1,a2,a3,a4,i: integer; begin a1: =1; a2: =2; a3: =3; (1); fori=1to4do begin a1: =a1+a4; (2); (3); (4); end; writeln(a4); end.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 16 鄞州区 小学生 信息学 奥林匹克试题
![提示](https://static.bingdoc.com/images/bang_tan.gif)