小学生计算机程序设计竞赛试卷及参考答案

合集下载

编程竞赛知识试题及答案

编程竞赛知识试题及答案

编程竞赛知识试题及答案一、选择题1. 在C++语言中,以下哪个关键字用于定义类?A. structB. classC. unionD. enum答案:B2. 以下哪个算法是用于排序的?A. 快速傅里叶变换(FFT)B. 深度优先搜索(DFS)C. 归并排序D. 欧几里得算法答案:C3. 在计算机科学中,递归函数的基本情况是什么?A. 调用自身B. 调用其他函数C. 终止条件D. 循环调用答案:C二、判断题1. 在Python中,列表和元组都是可变的。

()答案:错误(列表是可变的,元组是不可变的)2. 在数据结构中,栈是一种后进先出(LIFO)的数据结构。

()答案:正确3. 哈希表是一种基于数组的数据结构,它通过哈希函数来计算数据的存储位置。

()答案:正确三、简答题1. 请简述什么是二叉搜索树,并说明其基本操作。

答案:二叉搜索树(BST)是一种特殊的二叉树,其中每个节点的值都大于或等于其左子树上所有节点的值,并且小于或等于其右子树上所有节点的值。

基本操作包括插入、删除和查找。

2. 解释什么是动态规划,并给出一个简单的例子。

答案:动态规划是一种通过将复杂问题分解成更小的子问题来解决的方法,并且存储这些子问题的解以避免重复计算。

一个简单的例子是斐波那契数列,可以通过动态规划来避免指数级的时间复杂度。

四、编程题1. 编写一个函数,实现对一个整数数组进行排序。

答案:(示例代码,使用Python语言)```pythondef sort_array(arr):return sorted(arr)```2. 编写一个函数,实现判断一个整数是否为素数。

答案:(示例代码,使用Python语言)```pythondef is_prime(n):if n <= 1:return Falsefor i in range(2, int(n0.5) + 1):if n % i == 0:return Falsereturn True```结束语本次编程竞赛知识试题及答案到此结束,希望这些题目能够帮助你更好地理解和掌握编程竞赛中的相关知识点。

编程竞赛考试题库及答案

编程竞赛考试题库及答案

编程竞赛考试题库及答案1. 问题描述编写一个函数,该函数接收一个整数数组和一个目标值,找出数组中和为目标值的两个数的索引,并返回一个包含这两个索引的数组。

2. 输入格式输入包含两行,第一行为数组的长度 \( n \),第二行为 \( n \) 个整数,以空格分隔。

3. 输出格式输出一行,包含两个整数,用空格分隔,表示和为目标值的两个数的索引(索引从0开始)。

4. 样例输入42 7 11 155. 样例输出1 36. 问题分析此问题可以通过一次遍历数组,并使用哈希表记录每个元素的索引来解决。

遍历数组时,对于每个元素,计算目标值与当前元素的差值,然后在哈希表中查找是否存在该差值。

如果存在,则返回当前元素的索引和差值对应的索引。

7. 算法实现```pythondef two_sum(nums, target):hash_map = {}for i, num in enumerate(nums):difference = target - numif difference in hash_map:return [hash_map[difference], i]hash_map[num] = ireturn []```8. 测试用例- 输入: [3, 2, 4], 6- 输出: [1, 2]9. 注意事项- 如果数组中不存在两个数的和等于目标值,则返回空数组。

- 确保索引从0开始计数。

- 考虑数组中可能存在重复元素的情况。

10. 扩展问题如果数组中存在多个满足条件的数对,如何返回所有可能的数对索引?。

宁波市第22届中小学生计算机程序设计竞赛决赛试题

宁波市第22届中小学生计算机程序设计竞赛决赛试题

宁波市第22届中小学生计算机程序设计竞赛决赛试题(总2页)--本页仅作为文档封面,使用时请直接删除即可----内页可以根据需求调整合适字体及大小--宁波市第22届中小学生计算机程序设计竞赛决赛试题(小学组)考生须知:1、考试时间为150分钟,满分300分。

2、考生不得携带任何存储设备。

3、考试开始前,请先确定D盘内容不会被还原,如有问题请监考老师解决。

4、上机考试时要随时注意保存程序。

5、每题都必须提交源程序和编译后的可执行程序(程序的命名办法见每题中的规定),且必须存放到指定的文件夹内(放错位置的视为无效)。

测试时,以源程序为准。

6、考试结束后,不得关机,否则后果自负。

试题一:最小数(100分)(源程序名:或或,编译后可执行程序名:)【问题描述】给定一个正整数n,请去掉其中的m个数字,使其剩下的数字按原先从左到右的相对次序组成一个新数,但该新数的值必须尽可能的小。

【输入】输入文件中只有一行,共2个整数,分别是n和m的值,中间用一个空格分隔。

【输出】输出文件中只有一行,该行只有一个整数,它是从n中去掉m个数字后所能得到的最小新数(注:如果新数的最高位是零,输出时请去掉这些零)。

【数据限制】本题共有10组测试数据,每组10分,共100分。

50%的数据, 10≤n≤*109,另外50%的数据n不超过240位;所有的数据m的值都小于n的位数。

试题二:等式(100分)(源程序名:或或,编译后可执行程序名:)【问题描述】有一个未完成的等式:1 2 3 4 5 6 7 8 9=N当给出整数N的具体值后,请你在2,3,4,5,6,7,8,9这8个数字的每一个前面,或插入一个运算符号“+”号,或插入一个运算符号“-”号,或不插入任何运算符号,使等式成立,并统计出能使等式成立的算式总数,若无解,则输出0。

例如:取N为108时,共能写出15个不同的等式,以下就是其中的二个算式:1+23+4+56+7+8+9=108 123-45+6+7+8+9=108【输入】输入文件中只有1个数,即整数N的值。

宁波市第25届小学生计算机程序设计竞赛试题及答案

宁波市第25届小学生计算机程序设计竞赛试题及答案

宁波市第25届中小学生程序设计竞赛小学组初赛试题一、选择题(每题2分,共30分。

每小题只有唯一一个正确答案)1、在宁波市中小学生程序设计比赛复赛(上机编程)时,以下不能使用的编程语言是:(A)Turbo Pascal (B)Free Pascal (C)C (D)C++2、在Free Pascal中按功能键F7或F4时,以下叙述正确的是:(A)F4逐条语句执行(包括子程序),F7运行至光标位置(B)F7逐条语句执行(包括子程序),F4运行至光标位置(C)F4逐条语句执行(不包括子程序),F7运行至光标位置(D)F7逐条语句执行(不包括子程序),F4运行至光标位置3、使用高级语言编写的程序称之为:(A)源程序(B)编辑程序(C)编译程序(D)链接程序4、如果自己的程序进入了死循环,应当按什么键终止?(A)Ctrl+C (B)Ctrl+D (C)Alt+C (D)Alt+D5、参加宁波市中小学生程序设计比赛复赛(上机编程)时,以下哪种行为是允许的?(A)访问互联网或局域网(B)使用U盘或光盘(C)使用自带的草稿纸(D)考试时发现机器有问题,举手示意监考人员处理6、参加宁波市中小学生程序设计比赛复赛(上机编程)时,你有一个程序被判0分。

你发现程序其实是正确的,但存在以下问题,提出申诉,以下哪个申诉会被接受?(A)源程序文件名和存放源程序的目录名错误(B)只是存放源程序的目录名错误,源程序文件名是正确的(C)存放源程序的目录名正确,源程序文件名是错误的(D)根据比赛规则,以上申斥都不会被接受7、在Free Pascal语言,以下关于各种数据类型占内存空间大小的描述错误的是:(A)每个intege型占2个字节(B)每个longint型占4个字节(C)每个boolean型占2个字节(D)每个extended型占10个字节8、关键码相同的二个元素,原来在排在前面的还能保证排在前面,这种排序算法我们称它是稳定的。

宁波市第23届小学生计算机程序设计初赛试题及答案(Pascal)

宁波市第23届小学生计算机程序设计初赛试题及答案(Pascal)

2008年宁波市信息学竞赛初赛试题(小学组 Pascal 语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一、单项选择题(共15题,每题2分,共计30分。

每题有且仅有一个正确答案。

)1.在计算机中,程序和数据统一存储并在程序控制下自动工作;提出这种理论体系的科学家是(A)申农(B)摩尔(C)盖茨(D)冯·诺依曼2.十进制数17转化为二进制数是(A) 10001 (B) 10010 (C) 10101 (D) 11001 3.下列属于文字处理软件的是(A)Word (B)ACDSee (C)GoldWave (D)Flash 4.在Windows中,把鼠标指针指向一个右边有“…”符号的菜单项,将弹出(A)工具栏(B)对话框(C)状态栏(D)子菜单5.Internet Explorer(IE)浏览器中的“收藏”菜单的主要功能是管理(A)图片(B)邮件(C)网址(D)文档6.E-mail邮件本质上是一个(A)文件(B)电报(C)电话(D)传真7.由于网络的普及而兴起的一种新的数字音频格式是(A)MD (B)MP3 (C)VCD (D)DVD 8.计算机要处理光盘中的信息时,必须将待处理的信息调入(A)U盘(B)硬盘(C)内存(D)显示器9.区分局域网(LAN)和广域网(WAN)的依据是(A)网络用户(B)传输协议(C)联网设备(D)联网范围10.一般家庭是通过非对称数字用户环路技术上网的,该技术的英文缩写是(A)DNS (B)WWW (C)ISP (D) ADSL 11.下列存储容量之间换算正确的是(A)1 KB = 1000 B (B)1 MB = 1024 KB(C)1 MB = 1024 B (D)1 GB = 1024 KB12.利用随机函数random(3)可以产生的整数有(A)1、2 (B)0、1、2 (C)1、2、3 (D)0、1、2、313.语句c:=a=b能正确执行,其中变量a、b是整型数,则变量c的类型是(A)整数(B)实型(C)布尔型(D)字符型14.设A=B=True,C=D=False,下列逻辑运算表达式值为False的是(A)A OR C (B)A AND B(C)NOT ( A AND C ) (D)NOT ( A AND B )15.将数组{ 1, 2, 4, 3, 5, 6, 7, 8 }中的元素用冒泡排序的方法按从大到小的顺序排列,需要比较的次数是(A) 7 (B) 27 (C) 28 (D)64 二、问题求解(共2题,每题5分,共计10分)。

程序设计大赛试题及答案()

程序设计大赛试题及答案()

试题1、数学黑洞(程序文件名maths.c/maths.cpp)【问题描述】任给一个4位正整数,其各位数位上的数字不全相同,将数字重新组合成一个最大的数与最小的数相减,重复这个过程,最多7步,必得6174。

对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。

【输入】一行,一个4位正整数n(1000< n<9999)【输出】掉进黑洞的步数输入1234输出32、进制转换(程序文件名conver.c/conver.cpp)【问题描述】任给一个十进制整数n,及正整数m(m<=16且m≠10), 将n转换成m进制并输出。

【输入】一行,两个整数n,m(0 ≤ n ≤ 500000,2 ≤ m ≤ 16,且m≠10),中间用一个空格隔开,其中n 表示十进制数。

【输出】转换后的数【输入输出样例】输入255 8输出3773、分数线划定(程序文件名score.c/score.cpp)【问题描述】公务员选拔工作正在 A 市如火如荼的进行。

为了选拔优秀人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。

面试分数线根据计划录取人数的150%划定,即如果计划录取m名公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。

现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。

【输入】第一行,两个整数n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n),中间用一个空格隔开,其中n 表示报名参加笔试的选手总数,m 表示计划录取的人数。

输入数据保证m*150%向下取整后小于等于n。

第二行到第 n+1 行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k(1000 ≤ k ≤ 9999)和该选手的笔试成绩s(1 ≤ s ≤ 100)。

数据保证选手的报名号各不相同。

鄞州区小学生计算机程序设计竞赛

鄞州区小学生计算机程序设计竞赛

鄞州区小学生计算机程序设计竞赛(两小时完成)◆◆请将正确答案在答题卷上填写,在本试题卷上答题无效◆◆一、选择题(1.5*15)1)下列标识符哪个是合法的( )。

A、abcB、x#C、beginD、1a2)下列函数值是整型的是()A.chr(23)B.ord(x)C.pred(x)D.succ(x)3)下列函数值不可能是布尔类型的是()A.odd(g)B.ord(g)C.pred(g)D.succ(g)4)I nteger类型的数据范围是()A.-32767~32767B.0~32767C.-32768~32767D.-32767~327685)设x是实型变量,下列表达式能将x四舍五入后保留三位小数的是()A.round(x)B.round(x)/1000C.round(x*1000)/1000D.round(x*100)/1006)下列表达式的值为FALSE的是()A.Odd(True(7.49))B.Round((Abs(-9.5)))<10C.Not(‘9’<’100’)D.Ord(Chr(Pred(8)))>=77)判断变量ch的值是否为小写字母,下列表达式正确的是()A.not(ch<’a’)or(ch>’z’)B.’a’<=ch<=’z’C.(ch>=a)and(ch<=z)D.ch>=’a’ and ch<=’z’8)表达式Chr(Ord(‘A’)+4))的值是()A.’D’B.‘E’C.69D.1019)设a[1]=1,a[2]=2,a[3]=3,a[4]=4,a[5]=5,a[6]=6,且i=1,j=2,k=3,m=4下列变量的值等于3的是()A.a[i*j]B.a[a[k-i]+3]C.a[m div j]D.a[a[j+k-2]]10)十进制数2011等值于八进制数()A.4033B.3755C.4003 D 3733.11)下列无符号数中,最小的数是()A.(11011001)2B.(31)10C.(37)8D.(2A)1612)十进制算是表达式:5*512+7*64+4*8+5的运算结果,用二进制表示为()A.101101100101B.101111100101C.111111100101D.11101111011113)十进制数13/128可用二进制数码序列表示为()A.1101/1000000B.1101/10000000C.0.001101D. 1011/1000000014)已知二进制数x =(0.1011010)2 ,则[x/4]=( )A.0.01011101B.111101100C.0.00101101D.0.101101015)由4个a,3个b和1个c构成的所有字符串中,包含字串”abc”的共有( )个A.30B.60C.120D.48二、填空题1、基础知识填空(1*10)1)计算机语言分为___________语言、______________语言和____________语言。

小学生计算机程序设计竞赛决赛试题

小学生计算机程序设计竞赛决赛试题

小学生计算机程序设计竞赛决赛试题(改编为PASCAL 语言)说明:请将答案填在答题卡上,只交答题卡,时间 9:00—11:00 一、选择题(每题1分,共5分) 1、在PC 机中,pentium 指( )A 、生产厂家名称B 、硬盘型号C 、CPU 的型号D 、显示器的型号 2、运行程序最小化后,该程序处于( )状态。

A 、后台运行B 、挂起状态C 、前台运行D 、不改变运行状态 3、Windows 操作的特点是( )A 、同时选择操作项和操作对象B 、先选择操作项,后选择操作对象C 、将操作对象拖到操作项处D 、先选择操作对象,后选择操作项 4、在计算机中,ASC11码是( )位二进制代码 A.8 B. 7 C . 12 D . 16 5、E-MAIL 邮件本质上一个( )A 、电报B 、文件C 、电话D 、传真 二、填空题(每空2分,共10分) 1、运算18 mod 4= (1)2、2KB 的内存能存储 (2) 个汉字的机内码。

3、式子322)12(b x x b -+--的pascal 表达式是 (3)4、公安局拘留审查了四个有盗窃嫌凝的人:甲、乙、丙、丁。

已知其中一人是罪犯,在警察审讯他们时,他们每人都说了两句话:甲说:“乙没有偷,是丁偷的”;乙说:“我没有偷,是丁偷的”; 丙说:“甲没有偷,是乙偷的”;丁说:“我没有偷”。

事实表明,他们的话不是全对,就是全错,真正的罪犯是 (4) 。

5、二进制数11010转化为五进制数对应的值是 (5) 。

三、写出下列程序的运行结果(共40分,每题5分)1、编程求95、45、25,15四个数的最大公约数。

程序如下:var x1,n,I,x2,r,gcd:integer;beginREAD(X1);N:=4;FOR I:=1 TO N-1 do beginRead(X2);R:=X1 MOD X2;WHILE R<>0 do beginX1:= (1) ;X2:= (2) ;R:=X1 MOD X2;End;GCD:=X2;IF (3) THEN break;End;Writeln(‘GCD=’,GCD);输入:95 45 25 15END2、我们将左右对称的自然数称为回文数,例如:121,4114等;将只能被1与其本身整除的自然数称之为素数,例如:7,353等。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

小学生计算机程序设计竞赛试卷及参考答案
1、下列表达式的值为FALSE 的是( )。

A. Not( ‘90' '100 ')
B.Round((Abs(-10.5))) 10
C. Odd(True(98.49))
D.Ord(Chr(Pred(8))) =7
2 、判断变量ch 的值是否为大写字母,下列表达式正确的是( )。

A. ch = 'A' and ch = 'Z'
B.'A' =ch = 'Z'
C.(ch =A)and(ch =Z)
D. not(ch 'A' )or(ch ' Z')
3、表达式Chr(Ord( ‘ a')+5)) 的值是( )。

A.'f '
B.‘E'
C.102
D.101
4、与十进制数2014 等值的二进制数是( )。

A.11111011110
B.11110011110
C.10111111110
D.11111111010
5、[x] 补码=10011101 ,其原码为( )。

A.11001111
B.11100100
C.11100011
D.01100101
6、十进算术表达式:5*512+7*64 +4*8 +7 的运算结果,用二进制表示为( )。

A. 101111100111
B.111111100101
7、(2014)16 + (924)10 的结果是( )
C. 111110100101
D.111111011011
7、(2014)16 + (924)10 的结果是( )
A. (9036)10
B. (23B0)16
C. (9130)10
D. (100011000110)2
二、计算下列函数(1*15)
1、Sqr (7)的值为( )。

2、Round(19.6) 的值为( )。

3、Round(14.4) 的值为( )。

4、int(-5.7) 的值为( ) 。

5、Abs(-4.1) 的值为( )。

6、-37 mod 6 的值为( )。

7、'A ' 'a'的值为( )。

8、odd(25) 的值( )。

9、Not(17-5 13) 的值为( )。

10、(11 10 )and(7 =7) 的值为( )。

11、Round(-11.1) 的值为( )。

12、Round(-9.7) 的值为( )。

13、Trunc(-17.7) 的值为( )
14、chr(ord( ‘h ')) 的值为( )。

15、已知chr(97) 的值为字母a则chr(99) 的值为字母( )。

三、问题求解(5+6)
1、兄弟两人去钓鱼,一共钓了23 条,哥哥钓的鱼比弟弟的三倍还多3 条,哥哥弟弟各钓了多少条?
哥哥____________________ 弟_ 弟___________________________
2、对一批编号为1~100 ,全部开关朝上(开)的灯进行以下操作:凡是1 的倍数反方向拨一次开关;2 的倍数反方向又拨一次开关;3 的倍数反方向又拨一次开关;⋯⋯100 的倍数反方向又拨一次开关。

问:最后为关熄状态的灯的编
号有哪些?
四、看程序写结果
1、
var d, p: integer;
begin
p:=1;
d:=5;
while d 1 do
begin
p:=2*(p+1);
d:=d-1
end;
writeln (p) end.
输出:____________________
2、
var x,y:longint;
begin x:=2014; y:=924;
while (x 0) and (y 0) do begin
if x =y then x:=x-y else y:=y-x
end;
if x=0 then writeln(y) else writeln(x) end.
输出:_____________________________
3、
var i,j,n:integer; b:array[1..10] of 0..2;
begin n:=2014;j:=0;
while n 0 do begin j:=j+1;b[j]:=n mod 3; n:=n div 3; end; for i:=j downto 1 do write(b[i]); writeln;
end. 输出:
4、
var i,j,s:integer;
b :array[0..5] of integer;
begin
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.
输出:___________________________________
5、
var i,k:integer; a:array [0..20] of integer; begin
a[1]:=1; a[2]:=1;
k:=1;
repeat
a[k+2]:=1;
for i:=k+1 downto 2 do a[i]:=a[i]+a[i-1];
k:=k+1;
until k
for i:=1 to 6 do write(a[i]:5);
writeln
end.
输出:______________________________________
五、完善程序(3*4 )
1、鸡兔同笼问题:
鸡有一头二脚,兔有一头四脚;鸡兔同笼共有头m 个、脚n 个,问笼中鸡、兔各有多少?例如输入:4 10
输出:
3
1
var n,m:Qword;
begin
readln(m,n);
writeln(① );
writeln(② );
end.
2、最小公倍数
求两个正整数m、n 的最小公倍数k。

例如输入:12 9 输出:36
var a,b,t:Qword;
function gcd(m,n:Qword):Qword;
begin
if m mod n=0 then gcd:=n else gcd:= ③ ; end;
begin
readln(a,b);if a b then begin t:=a;a:=b;b:=t;end;writeln( ④ );
end.
3、汉诺塔问题
将A 柱上的圆盘移到C 柱。

移动规则如下:1 、一次只能移动一个
盘;2、不允许把大盘放在小盘上。

第一行只有一个正整数:k ,表示总移动次数
接下来的k 行,每行是一种移动方法。

例如输入3 输出
7
A- C
A- B
C- B
A- C
B- A
B- C
A- C var k,n,i:longint; procedure try(a,b,c:char;m:longint); begin
if m=1 then writeln(⑤ )
else
begin try(⑥ ); writeln(a, ' - ‘,c); try(⑦ );
end; end;
begin readln(n);
k:=1;
for i:=1 to n do
⑧; writeln(⑨ ); try(⑩ );
end.
计算机程序设计竞赛答案
一、选择题:(2 *7 ) 题号1 2 3 4 5 6 7 答案A 或B D A A C A B
二、计算下列函数( 1*15 ) 题号1 2 3 4 5
答案49 20 14 -5.0 ⋯E+000 4.1
题号6 7 8 9 10
答案-1 True True True True
题号11 12 13 14 15 答案-11 -10 -17 h c
三、问答题( 5+6 )
1、18 5
2、 1 4 9 16 25 36 49 64 81 100
四、看程序写结果( 6*5 )
1、46
2、2
3、2202121
4、s=252
5、 1 5 10 10 5 1
五、完善程序(3*10)
1、① (m*4-n)div 2 ② m-(m*4-n)div 2
2 、③ gcd(n,m mod n) ④ a*b div gcd(a,b)
3、⑤ a,' - ‘,c ⑥ a,c,b,m-1 (a,c,b, m div 2)
⑦ b,a,c,m-1(b,a,c,m div 2) ⑧ k:=k*2
⑨ k-1 ⑩ ‘A','B','C',n ( ‘A','B','C',K-1)。

相关文档
最新文档