内容正文:
第4单元 计算与问题解决
一、选择题
1.以下哪个概念是面向对象编程的核心( )
A.继承 B.接口 C.过程 D.函数
2.计算机解决问题的基本过程不包括以下哪项( )
A.问题定义 B.算法设计 C.编写代码 D.硬件购买
3.流程图描述的算法功能是( )
A.求输入的20个数的和 B.求输入的20个数中正数的和
C.求输入的20个数中正数的个数 D.求输入的20个数的平均值
4.某算法流程图如下图所示,在依次输入d的值为90,60,0后,该算法输出s的值为( )
A.90 B.60 C.0 D.150
5.算法执行的每一个步骤必须有确切的定义。这体现的算法特征是( )
A.有穷性 B.确定性 C.数据输入 D.数据输出
6.在计算正方形的面积算法中,“第一步,输入边长a;第二步,计算正方形的面积s=a*a;第三步,输出正方形的面积s。”这种算法的描述方式属于( )
A.自然语言 B.流程图 C.伪代码 D.高级语言
7.某算法部分流程图如图所示,执行该流程时,输入的x值依次为1,3,4,2,-1,输出的结果为( )
A.13 B.12 C.11 D.10
8.在《数据与计算》中,关于算法的描述,以下哪项是错误的?( )
A.算法是解决问题的一系列有序步骤 B.算法必须在有限步骤内完成
C.算法可以是随机的 D.算法的每一步都必须明确定义
9.使用流程图描述算法更形象.直观,容易理解,在流程图中,表示条件判断的基础图形是( )
A.矩形框 B.菱形框 C.圆形框 D.椭圆形框
10.某Python解决问题的算法流程图如图所示,执行这部分流程,输出a的值是( )
A.25 B.15 C.5 D.0
11.下图所示的流程图用于计算圆的周长,流程图中①处的内容是( )
A.C=3.14*r*r B.C=2x3.14xr C.C=2*3.14*r D.输出r
12.某算法的部分流程图如图所示,执行这部分流程,若输入x 的值为60,下列说法正确的是( )
A.该流程图中包含两个循环结构
B.语句i←i+1执行了4次
C.将语句x←x/i修改为x←x//i,程序运行结果与修改前不同
D.输出m的值是4
13.下面关于算法的描述,正确的是( )
A.算法不可以用自然语言描述 B.算法只能用流程图来描述
C.一个算法必须保证它的执行步骤是有限的 D.算法必须有输入和输出
14.在下方流程图中依次输入x的值为3、2、1、-1,最后一次该算法的输出结果n和s分别为( )
A.3,1 B.5,2 C.6,3 D.0,0
15.流程图是算法的一种图形化表示方法,其中菱形框表示( )
A.开始/结束 B.处理 C.输入/输出 D.判断
16.下列问题无法用算法具体描述的是( )
A.求所有自然数中5的倍数之和 B.计算一元二次方程的根
C.百鸡百钱问题 D.随机产生10个50以内的自然数并按降序排列
17.以下流程图描述的算法执行结果是( )
A.10 B.25 C.30 D.55
二、填空题
18.一张单据上有一个五位数的编号,万位数是1,千位数是4,十位数是7,个位数是3,百位数已经模糊不清,只知道该五位数是57或67的倍数,找出所有满足这些条件的五位数并输出。如图所示,把流程图填写完整 、 。
19.如图所示算法,输入k是3,该算法输出结果是 。
20.算法作为能确实解决问题的策略,具有有穷性、确定性、数据输入/输出、 性的特征。
21.“某网店促销活动:购物满2件8折,满3件6折”。用算法来描述这一问题,可采用三种基本算法结构中的 结构。
22.李华同学和业主委员会成员一起参与了小区智能停车场的改造,希望实现的功能主要包括车牌自动识别、车辆身份判断、出入控制、停车时间计算、费用收取及核查、语音对讲等。
管理策略:1.对于本小区业主固定车辆实施年费制,只要在缴费有限期内,则可自由通行。2.缴费期满则在车辆通过时自动提醒业主续费。3.为避免场地资源浪费,停车场允许外来车辆进入,按停车时长进行收费。
计费规则:时长不超过3小时(含3小时)的收费5元;时长超过3小时且不超过8小时(含8小时)的在5元的基础上每超过1小时增收2元;时长超过8小时且不超过12小时(含12小时)的收费30元。
李华根据计费规则设计了外来车辆进入停车场的计费流程图,时长用“T”表示,收费金额用“M”表示,请帮忙完善流程图,①②③④⑤⑥处应填的内容分别是( )、( )、( )、( )、( )、( )
(填字母:A、M=30 B、3<T≤8 C、M=5 D、M=5+(T-3)*2 E、8<T≤12 F、T≤3)
23.算法的常用表示方法有3种: 、 、 。
三、判断题
24.算法只能用自然语言来描述。( )
25.算法是解决问题的方法,它必须在有限步骤内完成,并且结果必须是确定的。 ( )
26.在计算机中算法执行的每一步都有确定的含义,不会出现二义性。( )
27.用自然语言描述的算法通俗易懂,便于翻译成计算机程序设计语言。( )
四、操作题
28.输入整数n,统计n的约数个数(不计1和它本身)。算法描述如图所示,请将下列程序补充完整。
程序代码:
n与int(input())
count=0
i=2
while( ):
if :
count=
i=i+l
print("约数个数是:",count)
29.这个问题,是我国古代著名趣题之一。大约在1500年前,《孙子算经》中就记载了这个有趣的问题。书中是这样叙述的:“今有雉兔同笼,上有三十五头,下有九十四足,问雉兔各几何?这四句话的意思是:有若干只鸡兔同在一个笼子里,从上面数,有35个头;从下面数,有94只脚。求笼中各有几只鸡和兔。请根据题目意思补全下列空着的代码。
for tu in range( ① , ② ):
ji=③
if ④ :
print("兔的只数为",tu, "鸡的只数为",ji)
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.A
【详解】本题考查软件开发。
面向对象编程(OOP)的核心概念是继承。在面向对象编程中,继承允许我们创建一个新的类(称为子类或派生类),该类继承了另一个类(称为父类或基类)的属性和方法。这种机制是实现代码重用、扩展性和多态性的关键。通过继承,我们可以构建出层次化的类体系,其中每个子类都保留了父类的功能,并可以添加新的功能或修改现有功能。
接口是面向对象编程中的一个重要概念,但它主要关注的是定义一组方法的规范,而不是实现这些方法的代码。接口提供了一种方式,使得类之间可以定义清晰的契约关系,但它本身并不包含实现代码,因此不是OOP的核心。
过程和函数是编程中的基本概念,它们在面向对象编程中也存在,但它们更偏向于过程化编程(Procedural Programming)的范式,而不是面向对象编程的核心。在面向对象编程中,我们更倾向于使用对象、类、继承、封装和多态等概念来构建软件系统。
故正确答案为:选项A。
2.D
【详解】本题考查算法。
硬件购买虽然对于实现计算机解决问题是必需的(特别是在没有适当硬件的情况下),但它并不属于计算机解决问题的基本过程,因为这一过程更侧重于软件层面(算法、代码等)的设计和实现。硬件购买是系统建设或升级的准备工作,而不是解决问题的直接步骤。故正确答案为:选项D。
3.C
【详解】本题考查算法分析。
k=1,k<=20控制输入20个数,当x>0时,即为正数时,累加x到s。统计i个数变量加1。最后输出i。故正确答案为:选项C。
4.D
【详解】本题考查算法流程图相关内容。由图可知,该算法功能是输入的d不为0时s累加,输入的d为0时循环结束,并输出累加值。故本题答案是D选项。
5.B
【详解】本题考查算法的特征。算法的特征包括有穷性、确定性、可行性、输入和输出。算法执行的每一个步骤必须有确切的定义,这体现了算法的确定性,即算法的每一步骤都应该是明确的、无歧义的。故答案为:B。
6.A
【详解】本题考查算法的描述。自然语言是人们日常交流所使用的语言,描述方式直观、简单,但可能存在歧义性和不精确性。例如,“第一步,输入边长a;第二步,计算正方形的面积s=a*a;第三步,输出正方形的面积s。”这种描述方式就是使用自然语言来表达算法的步骤。故答案为:A。
7.A
【详解】本题考查流程图。程序运行过程如下。因此输出s的值为13。故答案为:A。
s
m
x
0
2
1
2
2
3
5
3
4
9
4
2
13
4
-1
8.C
【详解】本题考查算法。算法是解决问题的一系列有序步骤:这是正确的。算法的定义就是解决问题的一系列操作步骤的集合,这些步骤是有序的,按照一定的逻辑和顺序进行。算法必须在有限步骤内完成:这也是正确的。算法的一个关键特性是有穷性,意味着算法在执行有限步之后必须结束,即算法所包含的步骤是有限的。算法可以是随机的:这是错误的。算法的特性之一是确定性,意味着算法中的每一步骤必须有确切的定义,相同的输入必然得到相同的输出。因此,算法不应该包含随机性。算法的每一步都必须明确定义:这是正确的。算法的确定性要求算法中每一条指令必须有确切的含义,不能出现模棱两可的情况。故正确答案为选项C。
9.B
【详解】本题考查算法流程图相关内容。菱形框用于条件判断,矩形框用于计算和赋值,(圆角矩形框)用于开始和结束。故本题答案是B选项。
10.C
【详解】本题考查Python程序。程序运行过程如下,由此可知,程序最终输出a的值为5。故答案为:C。
a
b
c
45
25
20
25
20
5
20
5
15
15
5
10
10
5
5
5
5
0
11.C
【详解】本题考查的是流程图识读。阅读流程图,可知这是求圆的周长C,故流程图中①处的内容是C=2*3.14*r(*表示乘)。故选C。
12.D
【详解】本题考查算法流程图相关内容。A选项,该流程图中包含一个循环结构,选项错误。B选项,语句i←i+1执行了3次,其终值为5,选项错误。C选项,将语句x←x/i修改为x←x//i,程序运行结果并未发生变化,选项错误。D选项,输出m的值是4,选项正确。故本题答案是D选项。
13.C
【详解】本题考查算法的描述。算法可以用自然语言、伪代码、流程图来描述;一个算法必须保证它的执行步骤是有限的;一个算法0个或多个输入,至少要有一个输出。故选C。
14.C
【详解】本题考查Python程序设计相关内容。
x输入3,3>0,执行s=0+3=3,n=0+1=1。
x输入2,2>0,执行s=3+2=5,n=1+1=2。
x输入1,1>0,执行s=5+1=6,n=2+1=3。
x输入-1,-1<0,则满足条件,输出n和s的值:6,3。
故本题答案是C选项。
15.D
【详解】本题考查的是流程图。流程图中菱形是条件判断框,平行四边形是数据输入/输出框,圆角矩形是开始/结束框,矩形是数据处理框。故选D。
16.A
【详解】本题考查算法相关内容。一个算法应该具有的特征:(1)有穷性,一个算法必须保证执行有限步之后结束; (2)确切性,算法的每一步骤必须有确切的定义;(3)输入,一个算法有零个或多个输入,以刻画运算对象的初始情况;(4)输出,一个算法有一个或多个输出,以反映对输入数据加工后的结果.没有输出的算法是毫无意义的;(5)可行性,算法原则上能够精确地运行。BCD符合算法特性,可以描述,A选项,不符合算法的有穷性,错误。故本题答案是A选项。
17.B
【详解】本题考查流程图。分析流程图可知,初始状态下i=1,s=0,
第一次循环:判断i<=10成立,执行语句:s=s+i=0+1=1,i=i+2=1+2=3;
第二次循环:判断i<=10成立,执行语句:s=s+i=1+3=4,i=i+2=3+2=5;
第三次循环:判断i<=10成立,执行语句:s=s+i=4+5=9,i=i+2=5+2=7;
第四次循环:判断i<=10成立,执行语句:s=s+i=9+7=16,i=i+2=7+2=9;
第五次循环:判断i<=10成立,执行语句:s=s+i=16+9=25,i=i+2=9+2=11;
第六次循环:判断i<=10不成立,退出循环,输出s=25。故答案为B选项。
18. n % 57 == 0 or n % 67 == 0 k=k+1
【详解】本题考查算法流程图相关内容。分析流程图,采用的是枚举算法来解决问题。枚举算法要列举所有的可能条件,不能重复,不能遗漏。五位数上百位模糊不清,根据流程图提示信息k * 100,所以k的取值范围是0~9,而且此五位数是57或67的倍数,所以第一空填为n % 57 == 0 or n % 67 == 0,循环需要继续下去,所以第二空是k = k+1。故①处答案是:n % 57 == 0 or n % 67 == 0,②处答案是:k=k+1。
19.24
【详解】本题考查算法分析。
该程序功能累加从3开始到10之间的所有奇数的和给变量S。即S=3+5+7+9=24。故正确答案为:24。
20.可行
【详解】本题考查算法的特征。算法作为能确实解决问题的策略,具有以下特征: 有穷性:算法的执行步骤必须是有限的,不能无限循环或无限执行。 确定性:算法的每一步骤都必须是明确定义的,不会存在歧义或不确定性。 数据输入/输出:算法需要接受输入数据,经过一系列的步骤处理后产生输出数据。 可行性:算法的执行过程是可行的,即能够在有限时间内完成,并且解决问题的方法是有效的。故答案为:可行。
21.分支
【详解】本题考查算法控制结构相关内容。算法有三种基本结构:顺序结构、分支结构、循环结构。题目中描述得是依据购物数量满足什么条件,确定打折数,属于分支结构。故本题答案是:分支。
22. F B E C D A
【详解】本题考查的是流程图识读。按照计费规则,首先判断时长是否不超过3小时(含3小时)即T<=3,是则收费5元M=5;否则判断时长是否超过3小时且不超过8小时(含8小时)即 3<T≤8;否则判断时长是否超过8小时且不超过12小时(含12小时)即 8<T≤12,满足②则执行M=5+(T-3)*2,满足③则执行M=30。
23. 流程图
自然语言 伪代码
【详解】本题考查的是算法描述。算法的常用表示方法有3种:流程图、自然语言、伪代码。
24.错误
【详解】本题考查算法。算法可以用多种方式来描述,常见的有自然语言、流程图、程序设计语言等。自然语言描述较为通俗易懂,但可能存在模糊和歧义;流程图直观清晰,能更形象地展示算法的流程和逻辑;程序设计语言则可以直接实现算法。故说法错误。
25.正确
【详解】本题考查算法。算法是解决问题的方法,必须在有限步骤内完成,并且结果必须是确定的。故正确答案为正确。
26.正确
【详解】本题考查算法特征相关内容。算法的五大特征:有穷性、确定性、能行性(可行性)、有0个或多个输入、有一个或多个输出。每一步都有确切的含义,不会出现二义性,这体现了算法的确定性。故本题答案是:正确。
27.错误
【详解】本题考查算法描述相关内容。自然语言表示的算法容易产生歧义,表示的含义往往不严格,不便翻译成计算机程序设计语言,故本题答案是:错误。
28. i<=n-1 n%i==0 count+1
【详解】本题考查流程图与Python程序。
(1)这里的条件是在循环中遍历可能的约数i,从2开始直到n的前一个数(n-1)。因为我们只需要考虑从2到n-1的数作为可能的约数,所以循环条件应该是i<=n-1。故答案为:i<=n-1。
(2)这个条件判断i是否是n的约数。如果n能够整除i,即n%i==0成立,那么i就是n的一个约数。故答案为:n%i==0。
(3)满足条件n%i==0时,表示找到了一个约数,所以将count计数器加1。故答案为:count+1。
29. 1 35 35-tu tu*4+ji*2==94:
【详解】本题考查Python程序设计相关内容。本题涉及到鸡兔同笼问题,由题目可知,鸡兔共35只,两者脚数为94,假设兔的数量为tu,取值范围为[1,34],则鸡的数量ji=35-tu,若tu*4+ji*2==94成立,则满足鸡兔同笼要求。故①处答案是:1,②处答案是:35,③处答案是:35-tu,④处答案是:tu*4+ji*2==94:。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$