内容正文:
第二章 算法与问题解决
一、选择题
1.算法的输出项确保( )
A.算法可以重复执行 B.算法可以并行处理
C.算法能够产生结果 D.算法能够自我优化
2.某算法的部分流程图如图所示。执行这部分流程后,下列分析正确的是( )
A.当x输入2,y输入1时,“b←b×x”共被执行4次 B.当x输入2,y输入3时,输出结果是8
C.当x输入2,y输入1时,输出结果是32 D.当x输入2,y输入3时,“a←a-1”共被执行3次
3.如图所示算法,若输入s=32,输出s=4,则用i和数字组成一个表达式,应填 。
4.若运行时输入x=8,以下流程图的运行结果是( )
A.7 B.9 C.8 D.1
5.以下选项中算法功能对应的流程图是( )
图1 图2 图3 图4
A.图3:求任意两个数的商 B.图4:求一个数与自然数的商
C.图1:求1+2+3+4+…+100的和 D.图2:求x的绝对值
6.小明编写了一道程序用来计算1+2+3+4+5+…+∞,但是他编写不出程序来,因为这不符合算法的( )特点。
A.必须有输出 B.有穷性 C.必须有输入 D.可行性
7.有如下算法描述:
①输入一串数字列表:24 65 15 42 63。
②选中其中最大的一个数与第一位数交换,再从剩余数中寻找最大的数与第二位数交换,直至最后一位。
③输出排序后的列表。
下列关于该算法的说法,不正确的是( )
A.排序后的第四位数为24 B.该算法一共进行了5轮才排序完毕
C.该算法实现的是从大到小的排序算法 D.最后的排序结果为65 63 42 24 15
8.下列关于算法的三种基本控制结构的说法,不正确的是( )
A.顺序结构按照每个步骤排列的先后顺序来执行
B.一个算法不能同时使用三种算法结构来描述
C.选择结构通过判断某些特定条件是否满足来决定下一步的执行流程
D.循环结构中控制执行语句重复执行,需要进行条件判断流程
9.某算法的部分流程图如图所示,执行该流程图,输入num为24,则输出s的值为( )
A.234 B.226 C.2223 D.2233
10.下面关于算法说法错误的是( )
A.算法的每一步骤必须有确切的定义
B.算法必须有输出
C.算法必须在有限步执行后能结束
D.一个问题的算法具有唯一性算法不一定有输入
11.王老师、岳老师、刘老师、游老师四人在考虑周末要不要外出郊游。已知如果周末下雨,并且岳老师不去,则王老师一定不去;如果岳老师去,则游老师一定去;如果刘老师去,则游老师一定不去;如果游老师不去,而且王老师不去,则刘老师一定不去。如果周末刘老师去了,则岳老师__________。周末__________。( )
A.去了 下雨 B.去了 没下雨
C.没去 下雨 D.没去 没下雨
12.有五副不同颜色的手套(共 10 只手套,每副手套左右手各1只),一次性从中取6只手套,请问恰好能配成两副手套的不同取法有__________种。( )
A.120 B.180 C.150 D.30
13.某算法的部分流程图如图所示,下列说法正确的是( )
A.执行该流程后,变量f的值是-1
B.执行该流程后,“i≤11?”共执行了6次
C.执行该流程能实现表达式“1-1/3+1/5-1/7+1/9-1/11”的计算
D.将“i≤11”改成“i≤12”会影响结果
14.下列不属于算法特征的是( )
A.有穷性 B.确切性 C.存储性 D.可行性
15.介于自然语言和程序设计语言之间的人工语言描述算法是( )
A.流程图 B.框架图 C.自然语言 D.伪代码
16.某算法的部分流程图如图所示,执行该算法,输出的结果是( )
A.0 B.1 C.2 D.5
二、填空题
17.如图所示算法,若输入n=4,输出是108,则用a与n在空白横线处组成一个完整的表达式,应填 。
18.流程图描述的算法,对列表a执行的结果是 。
19.流程图描述的算法,执行结果是 。
20.算法作为能确实解决问题的策略,具有有穷性、确定性、数据输入/输出、 性的特征。
21.以下流程图当输入a=3,b=1,c=5时,运行结束后d的值 。
三、判断题
22.算法是解决特定问题的一系列有序步骤。( )
23.计算机算法必须具有有穷性、确定性、有输入有输出和可行性。( )
24.算法在程序设计中可有可无,它不会影响程序设计的效率。( )
25.利用计算机解决同一问题时,往往可以采用多种不同的算法来实现,好的算法应该具备时间效率高、内存占用少等特点。( )
26.算法是能被计算机执行的动作或指令的有穷集合。( )
四、操作题
27.小明设计了算法计算序列2/1+3/2+5/3+8/5+……的前n项之和。该序列从第2项起,每一项的分子是前一项分子与分母之和,分母是前一项的分子。算法部分流程图如下所示。
(1)为实现该算法,请在流程图的划线处填入合适的语句。 、 、 、
(2)若输入n的值为10,则②处判断框中的语句共执行了 次。
(3)若将此算法用python程序实现,请为输入框中的语句“输入n的值”选择合适的代码(单选)( )
A.n=str(input("请输入 n 的值:")) B.n=int(input("请输入 n 的值:"))
C.n=str(input(请输入 n 的值:)) D.n=int(input(请输入 n 的值:))
28.【项目情境】
共享单车已成为一张新名片,是打通居民出行“最后一公里”的公共交通工具,是绿色城市、低碳出行的有力保障。但也存在一些困扰和问题:想骑行时却没有车可租;共享单车的大概的投放量有多少;骑行结束时物品忘拿、骑行花费等等问题。本项目站在多个角度聚焦这些问题,通过程序设计、分析数据和系统设计解决共享单车实际使用中遇到的真实问题。
【项目方案】
Ⅰ通过程序设计增加提醒功能,解决骑行结束时物品忘拿问题;
Ⅱ借助流程图,明晰骑行计费收费问题;
Ⅲ通过大数据分析技术,从时间、空间两个维度合理调配单车投放量问题。
【项目实施】
探究活动3:设计并完善车辆骑行计费功能模块的算法。车辆骑行计费方法是:骑行时长(分钟)未超过30分钟计费1.5元,超过30分钟后,按每30分钟(不足30分钟,按30分钟计)再加0.5元,骑行结束后车辆停到禁停区,除了骑行费用外,加收每单2元的车辆管理费用。
图1 图2
补充完善车辆骑行计费功能模块流程图(如图2)。将图1区域中的框图对应填入图2虚线框内。
① ② ③ (提示:填写框图所对应的字母)
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.C
【详解】本题考查算法。
A选项算法可以重复执行描述的是算法的可执行性或重复性,而不是输出项的特性。算法确实可以设计成可重复执行的,但这与输出项无直接关联。
B选项算法可以并行处理描述的是算法的执行方式,即是否可以在多个处理器上同时执行。这也不是输出项的特性。
C选项算法能够产生结果直接对应了算法输出项的定义。算法的输出项是算法执行后产生的结果,无论这个结果是一个数值、一个集合、一个字符串还是其他任何形式的数据。
D选项算法能够自我优化描述的是算法可能具有的一种特性,即算法在执行过程中能够调整自身以提高效率或准确性。然而,这并非所有算法都具备的特性,也不是输出项的定义。
故正确答案为:选项C。
2.A
【详解】本题考查算法分析。
当x输入2,y输入3时,b的值为4,即输出结果是4,因此B选项错误;当x输入2,y输入1时,b的值为16,即输出结果是16,因此C选项错误;当x输入2,y输入3时,“a←a-1”共被执行2次,因此D选项错误。当x输入2,y输入1时,“b←b×x”共被执行4次。故正确答案为:选项A。
3.i<=2
【详解】本题考查算法分析。
初始化i=10,s=32。该算法功能是累减s=s-i,每次循环i=i-2。s=32-10-8-6-4=4,故当i<=2时,退出循环。故正确答案为:i<=2。
4.A
【详解】本题考查算法分析。
x=8,判断8能否被5整除。不能整除进入下一个分支,判断8是否大于10,返回逻辑假,执行x=x-1。输出x为7。故正确答案为:选项A。
5.C
【详解】本题考查流程图。A选项错误,求任意两个数的商首先需要判断除数是否为0,流程图中缺少该步骤;B选项错误,求一个数与自然数的商,该自然数并未给出;C选项正确,通过(首项+末项)×项数÷2来计算1到100的和。D选项错误,该流程图没有输出。故答案为:C。
6.B
【详解】本题考查算法的特征。算法具有有穷性、确定性、可行性、有0个或多个输入、有一个或多个输出等特征。小明编写计算1+2+3+4+5+…+∞的程序无法实现,因为这个计算是无穷的,不符合算法的有穷性,即算法必须在有限的操作步骤内完成。故答案为:B。
7.B
【详解】本题考查排序算法。
该算法一共进行了5轮才排序完毕。不正确,实际上该算法在第四轮就已经完成了所有的必要交换,第五轮没有进行任何操作。其它选项均正确,故正确答案为:选项B。
8.B
【详解】本题考查算法。
一个算法不能同时使用三种算法结构来描述。这是不正确的。在实际的算法设计中,一个算法往往同时包含顺序结构、选择结构和循环结构。这三种结构是构成算法的基本单元,它们可以相互嵌套,共同描述算法的完整流程。其它选项均正确,故正确答案为:选项B
9.C
【详解】本题考查流程图。程序运行过程如下。因此输出s的值为2223。故答案为:C。
s
i
num
2
24
2
2
12
22
2
6
222
2
3
222
3
3
2223
3
1
10.D
【详解】本题考查算法的描述。算法的每一步骤必须有确切的定义,算法必须有输出,算法必须在有限步执行后能结束,一个问题的算法不具有唯一性,可以有0个或多个输入。故选D。
11.D
【详解】本题考查逻辑推理算法知识。题目中给出“如果周末刘老师去了”,这是我们的起点。根据条件3,如果刘老师去,则游老师一定不去。根据条件2,如果岳老师去,则游老师一定去。结合上面的推理,游老师不去,所以岳老师也不去。根据条件1,如果周末下雨并且岳老师不去,则王老师一定不去。现在我们知道岳老师不去,但题目没有直接给出是否下雨,所以我们不能确定王老师是否去。但由于岳老师不去,如果下雨,王老师也不会去。根据条件4,如果游老师不去,而且王老师不去,则刘老师一定不去。但我们已经知道刘老师去了,所以这种情况不可能发生。这意味着王老师必须去(因为游老师不去)。接下来,我们考虑周末是否下雨。由于王老师去了,根据条件1,如果下雨且岳老师不去,王老师不去。由于王老师去了,我们可以推断出周末没有下雨,否则这个条件会被违反。综上所述,如果周末刘老师去了,则岳老师没去,并且周末没下雨。故答案为D选项。
12.A
【详解】本题考查是解决问题的方法。先从5双手套中任选两双,有C25种取法;再从其余手套中任选2只,有C26种,其中选到一双同色手套的选法为3种。 故总的选法数为C25(C26-3)=120种。故选A。
13.C
【详解】本题考查算法流程图相关内容。分析流程图,该算法描述的是计算1-1/3+1/5-1/7+1/9-1/11的值。A选项,变量f的值依据循环执行在1与-1之间交替变化,循环结束后,其值为1,选项说法错误。B选项,变量i初值为1,在循环体内,每次增加2,即:1、3、5、7、9、11、13,当i值为13,循环条件i<=11不成立,结束循环,“i≤11?”共执行了7次,选项说法错误。C选项,分析该算法功能,该流程能实现表达式“1-1/3+1/5-1/7+1/9-1/11”的计算,选项说法正确。D选项,由“变量i初值为1,在循环体内,每次增加2,即:1、3、5、7、9、11、13”知,将“i≤11”改成“i≤12”不会影响结果,选项说法错误。故本题答案是C选项。
14.C
【详解】本题考查算法特征相关内容。算法特征:1、有穷性:一个算法必须保证执行有限步之后结束;2、确切性:算法的每一步骤必须有确切的定义;3、输入:一个算法有零个或多个输入,以刻画运算对象的初始情况;4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果,没有输出的算法是毫无意义的;5、可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。故本题答案是C选项。
15.D
【详解】本题考查算法的描述。伪代码(Pseudocode)是一种非正式的,类似于英语结构的,用于描述模块结构图的语言。介于自然语言和程序设计语言之间的人工语言描述算法是伪代码。故选D。
16.B
【详解】本题考查的是流程图的识别。阅读流程图可知,程序功能是利用“除2取余”方法,将t的十进制数转换为二进制数,m统计1的个数,n统计0的个数。如果m>=5或n>=4退出,输出t(下一次的被除数)。十进数333转二进制数为:101001101,故在取到次高位0时退出(满足n>=4),这时t的值为1,故本题应选B。
17.a<=n
【详解】本题考查算法流程图的识读。
第一次循环,a=a+b=2,b=a*b=2;
第二次循环,a=a+b=4,b=a*b=8;
第三次循环,a=a+b=12,b=a*b=96;
第四次循环不满足条件时,a+b=108,符合条件,n的值为4,结合运行过程,循环条件可以是a<=n。
18.13
【详解】本题考查流程图。初始化,a[3]=2,a[4]=3,m=5;第一次循环,a[5]=a[3]+a[4]=2+3=5,m=m+1=6;第二次循环,a[6]=a[4]+a[5]=3+5=8,m=m+1=7;第三次循环,a[7]=a[5]+a[6]=5+8=13,m=m+1=8;第四次循环,a[8]=a[6]+a[7]=8+13=21,m=m+1=9;此时a[7]=13。故答案为:13。
19.shanghai
【详解】本题考查算法分析。
该程序功能比较str1和str2字符串大小,输出较大的字符串。小写字母s的ASCII码大于大写字母S。故正确答案为:shanghai。
20.可行
【详解】本题考查算法的特征。算法作为能确实解决问题的策略,具有以下特征: 有穷性:算法的执行步骤必须是有限的,不能无限循环或无限执行。 确定性:算法的每一步骤都必须是明确定义的,不会存在歧义或不确定性。 数据输入/输出:算法需要接受输入数据,经过一系列的步骤处理后产生输出数据。 可行性:算法的执行过程是可行的,即能够在有限时间内完成,并且解决问题的方法是有效的。故答案为:可行。
21.1
【详解】本题考查的是流程图识读。阅读流程图可知,该程序功能是求a,b,c中最小的数。故当输入a=3,b=1,c=5时,运行结束后d的值1。
22.正确
【详解】本题考查算法。算法是计算机科学中的一个核心概念,它是指为解决某一特定问题而设计的一系列有序、明确的、可执行的步骤或指令的集合。这些步骤或指令描述了如何逐步地将输入数据转换为所需的输出数据。故正确。
23.正确
【详解】本题考查算法特征。有穷性,算法必须在有限的时间内完成,即算法的执行步骤是有限的,不能陷入无限循环中。确定性,算法的每一步骤都必须有明确的定义,不会出现模棱两可的情况。算法在相同的条件下,只有一条执行路径,相同的输入只会产生相同的输出。输入,算法有零个或多个输入,这些输入是算法开始执行前所必需的或外部提供的。输出,算法至少有一个输出,它是算法执行后产生的结果。算法的目的是为了求解某个问题或处理某个数据,并将处理结果以某种形式输出。可行性,算法的每一步都必须是可行的,也就是说,每一步都能通过执行有限次数的基本运算实现,故根据题意说法正确。
24.错误
【详解】本题考查算法相关内容。算法就是用计算机求解某一问题的方法是能被机械地执行的动作或指令的有穷集合。算法是程序的灵魂,它独立于任何一种程序设计语言,一个算法可以用多种程序设计语言来实现。良好的算法设计,不仅可以提高程序的执行效率,起到事半功倍的效果,而且可以以算法设计为基础,通过寻求不同问题存在的相互联系,从计算机角度对不同问题的共性进行算法设计,实现程序编写的举一反三。算法设计是整个程序设计的核心。故本题答案是:错误。
25.正确
【详解】本题考查算法相关内容。好的算法通常具有以下特点:(1)正确性--算法能够产生正确的输出结果,符合预期的计算目标。(2)可读性--算法的逻辑清晰,易于理解和阅读,方便其他人理解和维护。(3)高效性--算法在有限的时间内能够完成计算任务,不会消耗过多的计算资源。(4)健壮性--算法能够处理各种输入情况,不会因为输入的变化而导致错误或崩溃。(5)可扩展性--算法能够适应不同规模和复杂度的问题,并能够方便地进行扩展和修改。(6)优化性--算法能够在满足计算要求的前提下,尽可能地减少时间和空间复杂度,提高计算效率。(7)可靠性--算法在各种条件下都能够产生一致的结果,不受环境或输入数据的影响。故本题答案是:正确。
26.正确
【详解】本题考查算法相关内容。算法(Algorithm)是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法的一个特性是:有穷性(Finiteness),是指算法必须能在执行有限个步骤之后终止。故本题答案是正确。
【点睛】
27. d1←2 或 d1=2 n-1 d1-d2 i←i+1 或 i=i+1 11 B
【详解】本题考查算法流程图相关内容。分析流程图,推知:
(1)①处,d1存放分子,d2存放分母,d1初始值为2,故此处答案是:d1←2 或 d1=2。②处,题目要求计算前n项之和,i从0开始,终值为n-1(循环条件成立),故此处答案说:n-1。③处,由“每一项的分子是前一项分子与分母之和,分母是前一项的分子”知,d1=d1-d2,则d2=d1-d2,故此处答案是:d1-d2。④处,每完成一项计算,i值应加1,即:i=i+1,故此处答案是:i←i+1 或 i=i+1。
(2)若输入n的值为10,i从开始0,终值为n-1(循环条件成立),循环条件不成立时,i值为10,则②处判断框中的语句共执行11次,故本题答案是:11。
(3)input()函数以字符串的形式接收用户的输入,并将其作为函数的返回值,题目需要的是整型数据,需要通过int()函数将其转换为整型。排除AC选项。B选项符合要求。D选项,input()函数中应使用双引号将“请输入n的值:”括起来,选项错误。故本题答案是:B。
28. C B A
【详解】本题考查算法流程图相关内容。结合题目内容,分析流程图,①处,若判断条件i<=30成立,则计费公式为:cost=1.5,故此处答案为:C。②处,③若判断条件t<=30不成立,说明骑行时间超过30分钟,依据“按每30分钟(不足30分钟,按30分钟计)再加0.5元”,需要判断t%30==0,故此处答案为:B。③处,依据“骑行结束后车辆停到禁停区,除了骑行费用外,加收每单2元的车辆管理费用”,此处需要判断是否停到禁停区(is_fib==1),故此处答案为:A。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$