内容正文:
2.1 算法的概念及描述
一、选择题
1.算法分析的两个主要方面是( )
A.空间复杂度和时间复杂度 B.正确性和简单性
C.可读性和文档性 D.数据复杂度和程序复杂度
2.图形符号 在算法描述流程图中表示( )
A.算法的开始或结束 B.输入输出操作
C.处理或运算的功能 D.判断条件是否满足需求
3.下列关于算法特征的描述,不正确的是( )
A.算法中对于每一个步骤的描述不一定是确定的
B.算法的处理步骤必须是有限的
C.算法的输入值可以直接输入,也可以包含在算法中
D.算法必须至少有一个输出
4.有如下算法描述:
①输入一串数字列表:24 65 15 42 63。
②选中其中最大的一个数与第一位数交换,再从剩余数中寻找最大的数与第二位数交换,直至最后一位。
③输出排序后的列表。
下列关于该算法的说法,不正确的是( )
A.排序后的第四位数为24 B.该算法一共进行了5轮才排序完毕
C.该算法实现的是从大到小的排序算法 D.最后的排序结果为65 63 42 24 15
5.下列有关算法的说法,不正确的是( )
A.输出所有的质数不符合算法的有穷性特征
B.通过伪代码来描述算法可以被计算机理解并执行
C.在一个多分支结构中,必定有一个分支被执行,其他的分支则被忽略
D.用算法解决问题的过程一般需要经过抽象与建模、设计算法、描述算法
6.如图所示,1号篮子装满了苹果,2号篮子装满了玩具,3号篮子是一个空篮子,现需要将1号篮子和2号篮子所装的物品互换,即1号篮子装满玩具,2号篮子装满苹果,实现这个结果的步骤如下,正确的操作是( )
①将1号篮子中的苹果倒在3号篮子中;
②将2号篮子中的玩具倒在1号篮子中;
③将3号篮子中的苹果倒在2号篮子中;
A.①③② B.①②③ C.②①③ D.③①②
7.以下流程图描述的算法中,正确的是( )
A.A B.B C.C D.D
8.下列关于算法特征的的描述,正确的是( )
A.一个算法的每一个步骤必须有确切的含义。
B.一个算法可以有多个输出,但是至少有一个输入。
C.一个算法可以永无止境的进行下去。
D.一个算法不一定必须可行,理论上想法对就可以执行。
9.计算s=1×2×3×…×n的算法流程图如图所示,虚线框中应填写的内容是( )
A. B. C. D.
10.算法的时间复杂度主要用来衡量( )
A.算法的运行时间 B.算法的空间需求 C.算法的代码长度 D.算法的可读性
11.算法是指( )
A.数学的计算公式
B.问题的精确描述
C.解决问题的方法和精确步骤
D.程序设计语言的语句序列
12.算法的的基本结构,按特征分( )种。
A.2 B.3 C.4 D.5
13.下列关于算法的叙述,错误的是( )
A.算法必须执行有限步以后能结束 B.算法必须有输出
C.算法一定有输入 D.算法可以使用程序设计语言来实现
14.下面关于算法的描述,正确的是( )
A.同一问题的算法不同,结果必然不同 B.算法执行后可以不产生正确的结果
C.解决某类问题的算法可以不是唯一的 D.算法的步骤是可以无限的
15.某算法的部分流程图如右图所示,以下说法正确的是( )
A.该流程执行完,输出的结果是41
B.该流程执行后,变量a的值是32
C.交换s←s+k*a和k←1-k这两个语句的顺序,不影响输出结果
D.该流程执行后,变量k的值是1
二、填空题
16.在α-β剪枝算法中,α值表示当前节点的父节点的 可能得分。
17.伪代码是一种介于自然语言和编程语言之间的算法表示方法,它具有较好的 。
18.程序代码是算法的一种表示方法,它是用某种编程语言编写的 。
19.一个算法中的每一步都应该是确定的、没有歧义的语句,这符合算法特征中的( )性。
20.以下流程图当输入a=3,b=1,c=5时,运行结束后d的值 。
三、判断题
21.算法必须有输出。 ( )
22.自然语言表示算法时,通常需要使用更多的文字来描述。( )
23.算法是随着计算机的发展而产生的,没有计算机就没有算法。( )
24.算法的优劣可以用空间复杂度与时间复杂度来衡量。( )
25.算法的每一个步骤可以对应程序中一条或多条语句,每条语句最多只能实现一个操作。( )
四、操作题
26.观察如图所示的算法的功能,回答以下问题
(1)若输入8,6,那么输出
(2)该算法实现的功能是
27.某算法流程图如下:
(1)依次输入1,10,1,执行该流程后,输出结果为 。
(2)依次输入1,10,2,执行该流程后,输出结果为 。
(3)依次输入1,6,2,执行该流程后,输出结果为 。
(4)依次输入3,6,2,执行该流程后,输出结果为 。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.A
【详解】本题主要考查算法分析。算法分析的两个主要方面是空间复杂度和时间复杂度。在计算机科学中,算法的时间复杂度是一个函数,它定量描述了该算法的运行时间;空间复杂度是对一个算法在运行过程中临时占用存储空间大小的量度,故本题选A选项。
2.D
【详解】本题考查的是流程图。菱形框在算法描述流程图中表示判断条件是否满足需求;圆角矩形是表示算法的开始或结束;矩形框是表示处理或运算的功能;平行四边形是表示输入输出操作。故选项D正确。
3.A
【详解】本题主要考查算法的特征。一个算法应该具有以下五个重要的特征:1、有穷性: 一个算法必须保证执行有限步之后结束;2、确切性:算法的每一步骤必须有确切的定义;3、输入:一个算法有0个或多个输入,以刻画运算对象的初始情况,所谓0个输入是指算法本身定义了初始条件;4、输出:一个算法有一个或多个输出,以反映对输入数据加工后的结果。没有输出的算法是毫无意义的;5、可行性:算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。故本题选A选项。
4.B
【详解】本题考查排序算法。
该算法一共进行了5轮才排序完毕。不正确,实际上该算法在第四轮就已经完成了所有的必要交换,第五轮没有进行任何操作。其它选项均正确,故正确答案为:选项B。
5.B
【详解】本题考查算法。伪代码是一种用来描述算法的工具,但它不能直接被计算机理解并执行,需要转化为计算机语言才能执行。故答案为:B。
6.B
【详解】本题主要考查算法描述。分析题干可知,实现这个结果的步骤依次是:①将1号篮子中的苹果倒在3号篮子中;②将2号篮子中的玩具倒在1号篮子中;③将3号篮子中的苹果倒在2号篮子中,故本题选B选项。
7.A
【详解】本题考查算法特征。
算法是在有限步骤内求解某一问题所使用的操作步骤和方法,具有五个重要特征,即有穷性、可行性、确定性、可以没有输入、必须有输出等特征。图A正确,所有特征都符合;图B不符合可行性,分数分母不能为0;图C不符合确定性,自然数是不确定的变量;图D不符合有穷性,循环不能正常结束。故正确答案为:选项A。
8.A
【详解】本题主要考查算法的特征。一个算法的每一个步骤必须有确切的含义;一个算法可以有0个或多个输入,但是至少有一个输出;一个算法不可以永无止境的进行下去;一个算法一定必须可行,故本题选A选项。
9.C
【详解】本题考查的是流程图识读。计算s=1×2×3×…×n,初始i=1,终值是n,故虚线框中应填写的内容是i<=n,选项C正确。
10.A
【详解】本题考查算法时间复杂度。算法的时间复杂度是用来估计算法解决问题所需的时间。它通常用大O符号表示,如O(n)、O(n^2)等。故答案为:A。
11.C
【详解】本题考查的是算法的描述。算法是利用计算机解决问题的处理步骤,简而言之,算法就是解决问题的步骤,故本题选C选项。
12.B
【详解】本题考查的是算法结构。算法的的基本结构可分为:顺序结构、选择结构、循环结构。共3种,故本题应选B。
13.C
【详解】本题主要考查算法的特征。算法必须执行有限步以后能结束;算法必须有输出;算法可以有0个或多个输入;算法可以使用程序设计语言来实现,故本题选C选项。
14.C
【详解】本题考查算法相关知识。算法是在有限步骤内解决某一问题所使用的方法。算法的描述可以是自然语言、流程图、伪代码等,同一问题的算法不同,结果可能相同,选项A说法错误;算法的主要目的是为了解决问题,如果算法执行后不产生正确的结果,那么它就没有达到预期的目的,选项B说法错误;解决某类问题的算法可以不是唯一的,选项C说法正确;算法具有有穷性,步骤不能无限,选项D说法错误。故答案为C选项。
15.A
【详解】本题考查算法流程图相关内容。其运行过程如图所示:。A选项,该流程执行完,输出的结果是41,选项正确。B选项,该流程执行后,变量a的值是64,选项错误。C选项,交换s←s+k*a和k←1-k这两个语句的顺序后,输出结果为17,选项错误。D选项,该流程执行后,变量k的值是0,选项错误。故本题答案是A选项。
16.最小
【详解】本题考查启发式搜索算法。在α-β剪枝算法中,α值表示当前节点的父节点的可能得分的最小值。α值用于剪枝过程中的最大化节点,表示当前已知的最大下界。如果当前节点的得分低于α值,则不需要进一步搜索该节点的子节点,因为它不会影响最终的决策。
17.可读性
【详解】本题考查伪代码。伪代码结合了自然语言的通俗易懂和编程语言的逻辑结构,既不像自然语言那样可能存在模糊和歧义,又不像编程语言那样严格遵循特定语法。这种特点使得伪代码更容易被理解和阅读,具有较好的可读性。故答案为:可读性。
18.指令序列
【详解】本题考查算法的表示。程序代码是将算法以特定编程语言的形式呈现出来,形成一系列的指令序列。这些指令按照特定的语法和逻辑结构编写,计算机能够理解并执行,从而实现算法所描述的功能和操作。故答案为:指令序列。
19.确定
【详解】本题考查的是算法特征。确定性:算法执行的每一个步骤必须有确切的定义,不能出现模棱两可的情况。
20.1
【详解】本题考查的是流程图识读。阅读流程图可知,该程序功能是求a,b,c中最小的数。故当输入a=3,b=1,c=5时,运行结束后d的值1。
21.对
【详解】本题主要考查算法的特点。算法可以没有输入,但至少要有一个输出,表述正确。
22.正确
【详解】本题考查算法的表示。自然语言具有丰富性和灵活性,但相对不够简洁和精确。在描述算法时,为了清晰准确地表达算法的逻辑、步骤、条件和循环等,往往需要较多的文字进行详细阐述。因为自然语言不像特定的编程语言或图形符号那样有简洁明确的规则和约定,所以需要更多的描述来避免歧义。故说法正确。
23.错误
【详解】本题考查的是算法相关知识。算法是指解题方案的准确而完整的描述,是一系列解决问题的清晰指令,算法代表着用系统的方法描述解决问题的策略机制。没有计算机也有算法,故题干中的说法是错误的。
24.正确
【详解】本题考查的是算法相关知识。算法的优劣可以用空间复杂度与时间复杂度来衡量。说法正确。
25.正确
【详解】本题考查的是算法相关知识。算法的每一个步骤可以对应程序中一条或多条语句,每条语句最多只能实现一个操作。题干中说法正确。
26.(1)24,2 (2)求最小公倍数和最大公约数
【详解】
27. 10 5 3 2
【详解】本题考查的是流程图识读。阅读流程图可知是计算c~z(包含c和z)步长为b的序列数有几个。
(1)依次输入1,10,1,1~10步长为1的序列数有:1、2、3、4、5、6、7、8、9、10共10个数,故输出结果为10。
(2)依次输入1,10,2,1~10步长为2的序列数有:1、3、5、7、9共5个,故输出结果为5。
(3)依次输入3,6,2,3~6步长为2的序列数有:3、5共2个,故输出结果为2。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$