内容正文:
2.2 算法的概念及描述
一、选择题
1.下列描述算法的流程图符号中,如果要对“b=a+c”这一条件进行判断,应使用的流程图符号是( )。
A. B. C. D.
2.以下流程图描述的算法中,正确的是( )
A.A B.B C.C D.D
3.下列问题不能用算法描述的是( )
A.美术课上回答“什么是美” B.根据烤面包步骤完成面包制作
C.利用“辗转相除法”求123和711的最大公约数 D.导航软件使用路径规划确定起点到终点的最佳路线
4.下列选项中,属于算法描述方法的是
A.列表法
B.枚举法
C.流程图
D.集合法
5.关于算法的描述,下列叙述正确的是( )
A.由于流程图直观、形象,容易理解,所以只能用流程图来描述算法
B.由于不同的人使用不同的语言,所以算法不可以用自然语言来描述
C.算法中每一步的操作必须是可执行的
D.算法中必须要通过对象来输入数据才能进行
6.某算法的部分流程图如下图所示。执行这部分流程,若输入n的值为2035,则输出s的值为( )
A.10 B.53 C.2035 D.5302
7.以下不是算法的特征是( )
A.有穷性 B.数据输出 C.可行性 D.不确定性
8.下列问题不能用算法描述的是( )
A.输入圆的半径,求圆的面积
B.输入十位同学的身高,求他们的平均身高
C.输入三个数,求这三个数的最大数
D.输出所有3的倍数
9.假设在“烧水泡茶”这一过程中要经历5道工序,分别是①烧开水壶1分钟,②烧开水10分钟,③洗茶壶茶杯2分钟,④取茶叶1分钟,⑤泡茶1分钟,若合理安排这5到工序执行的先后顺序,可以使“烧水泡茶”整个过程所有的总时间最短为( )
A.12分钟 B.10分钟 C.11分钟 D.15分钟
10.在有限的步骤内解决某一问题的确切过程叫做算法。以下关于算法的描述中,错误的是( )
A.《九章算术》中用“更相减损术”求最大公约数的记载属于算法的自然语言描述
B.算法必须有输入,也必须有输出,而且可以有多个输入输出
C.任何复杂的算法最终都可以用顺序、分支、循环结构来实现
D.同一问题选用不同的算法执行效率可能会有很大差别
11.某算法的部分流程图如图所示,若输入m的值是6,执行这部分流程后,s,i的值分别是( )
A.2,4 B.0,4 C.6,4 D.4,6
12.某算法的部分流程图如图所示,执行这部分流程,下列说法正确的是 ( )
A.其中语句 i<=5 共执行了 6 次
B.程序结束后s 值可能为 3
C.流程执行结束后k 值一定为 1
D.流程执行过程中共产生 5 个 t 值,t 值取值为 1 或 2
13.关于算法,下列叙述正确的是( )
A.解决任何一个具体问题只有一种算法 B.流程图只是算法的一种表示形式
C.一种算法只能用一种程序语言来实现 D.算法是解题方法的精确描述,可以有无限个步骤
14.某算法的部分流程图如图所示,执行这部分流程,若输入的x依次为4,5,9,14,0,则输出n的值是( )
A.1 B.2 C.3 D.4
15.某算法的部分流程图如图所示。若输入n的值为7,则输出的ans值是( )
A.0 B.-2 C.-5 D.-8
16.如图所示求 的流程图,则图中①处应填入的内容是( )
A. B. C. D.
二、填空题
17.在算法中, 是用来衡量算法在执行过程中所需的存储资源。
18.小明设计了一个“机器人走棋盘”算法,流程图如下。据流程图分析,机器人从棋盘S位置沿箭头方向出发,将到达的位置是 。
19.根据图72所示的流程图,回答问题。
(1)语句i=i+1总共被执行的次数是 ;
(2)该算法中用到的两种结构是 和 ;
(3)该程序实现的功能是 ;
(4)若依次输入12、-10、30、19、22,则输出的值是 ;
(5)编程解决问题的过程分为五个步骤,其中根据问题描述画出流程图属于 。
20.依次输入8、7、9,以下流程图的算法执行结果是 。
\
21.算法有顺序结构、选择结构和循环结构三种基本控制结构,以下流程图①是 结构,②是 结构。
三、操作题
22.小明根据如下流程图编写了VB程序,但运行时提示有错,请找出程序中的5个错误,并改正。
(1)错误语句的编号是_______。(2)修改为___________________________。
(2)错误语句的编号是_______。(2)修改为___________________________。
(3)错误语句的编号是_______。(2)修改为___________________________。
(4)错误语句的编号是_______。(2)修改为___________________________。
(5)错误语句的编号是_______。(2)修改为___________________________。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.D
【详解】本题主要考查算法流程图。菱形是条件判断框,平行四边形是数据输入/输出框,圆角矩形是开始/结束框,矩形是数据处理框。故如果要对“b=a+c”这一条件进行判断,应使用的流程图符号是菱形框,故本题选D选项。
2.A
【详解】本题考查算法特征。
算法是在有限步骤内求解某一问题所使用的操作步骤和方法,具有五个重要特征,即有穷性、可行性、确定性、可以没有输入、必须有输出等特征。图A正确,所有特征都符合;图B不符合可行性,分数分母不能为0;图C不符合确定性,自然数是不确定的变量;图D不符合有穷性,循环不能正常结束。故正确答案为:选项A。
3.A
【详解】本题考查算法相关内容。算法是指完成一个任务所需要的具体步骤和方法。也就是说给定初始状态或输入数据,经过计算机程序的有限次运算,能够得出所要求或期望的终止状态或输出数据。分析4个选项,BCD是能体现方法或步骤,A选项只是解答问题,不是算法。故本题答案是A选项。
【点睛】
4.C
【详解】本题考查的是算法相关知识。常用的算法表示形式有:自然语言、流程图和伪代码等。故本题应选C。
【点睛】
5.C
【详解】本题考查算法。A选项错误,算法可以用流程图、自然语言、伪代码等多种方式来描述,并非只能用流程图。B选项错误,算法可以用自然语言来描述,不同的人使用不同的语言不影响算法用自然语言表达。C选项正确,算法中每一步的操作必须是可执行的,这是算法的基本要求。D选项错误,算法中输入数据的方式不局限于通过对象,还有其他方式。故答案为:C。
6.D
【详解】本题考查流程图的识读。输入n=2035,分析流程图,可知该流程图实现将输入n的值2035逆序输出,因此s的值为5302。故选D。
7.D
【详解】本题主要考查算法的特征。算法的特征有:有穷性、数据输出、可行性、确定性,故本题选D选项。
8.D
【详解】本题考查的是算法的特征
选项D中,所有3的倍数有无数多个,它违背了算法的有穷性特征,因此不能用算法描述。故选D选项
9.A
【详解】本题考查的算法的优化。“烧水泡茶”的五道工序是可以优化的。③洗茶壶茶杯2分钟,④取茶叶1分钟,这两步时可以在②烧开水10分钟的时候同时做的。所以总用时可以最短为1+10+1=12分钟,故选项A正确。
10.B
【详解】本题考查算法。算法不一定必须有输入,但必须有输出。例如,有些算法是自启动的、不依赖外部输入的,但最终会有输出。故答案为:B。
11.B
【详解】本题考查的是流程图识读。初始值m=6,i=10,s=1。
i>=6成立,执行i=i-2=8,i%3=2,执行s=2*s=2;
i>=6成立,执行i=i-2=6,i%3=0,执行s=s-2=0;
i>=6成立,执行i=i-2=4,i%3=1,执行s=2*s=0;
i>=6不成立,输出s=0,i=4。选项B正确。
12.B
【详解】本题考查的是流程图识读。i初始值为0,每次自增1,i=6时才跳出循环,故语句 i<=5 共执行了 7 次,选项A说法错误;流程执行过程中共产生 6个 t 值,t 值取值为 1 或 2,当t取到3次2和3次1时,则s=2+2+2-1-1-1=6,故选项B说法正确;流程执行结束后k 值可能为1也可能是-1,故选项C说法错误;流程执行过程中共产生 6个 t 值,t 值取值为 1 或 2,故选项D的说法错误。
13.B
【详解】本题考查的是对算法的理解。一个问题可能有多种算法解决,选项A错误。一种算法可以用多种程序语言来实现,选项C错误。算法必须在有限步骤内完成,选项D错误。故本题选B。
14.B
【详解】本题考查流程图。使用元素跟踪法可得下表:
x=4
x=5
x=9
x=14
x=0
x!=0
x!=0
x!=0
x!=0
x==0退出
c=0,b=0,a=4
c=0,b=4,a=5
c=4,b=5,a=9
c=5,b=9,a=14
a!=0+0
5!=0+4
9==4+5
14==5+9
n=1
n=2
因此,最后输出的n的值为2。故答案为:B。
15.D
【详解】本题考查的是流程图识读。各变量执行过程变化如下:
循环次数
n
i
q
ans
0
7
0
3
-5
1
7
2
1
-4
2
7
4
-1
-5
3
7
6
-3
-8
4
7
8
-3
-8
故本题应选D
16.D
【详解】本题考查的是流程图的识读。由题意可知,要求 的结果,当A= ,i=1时,满足i<=2,则计算A= = 即可,i=i+1=2,满足i<=2,再计算A= = ,即可得最后的结果,故选项D正确。
17.空间复杂度
【详解】本题考查算法相关内容。算法的空间复杂度是指执行这个算法所需要的内存空间,一个算法所占用的存储空间包,括算法程序所占的空间、输入的初始数据所占的存储空间以及算法执行中所需要的额外空间,其中,额外空间包括算法程序执行过程中的工作单元以及某种数据结构所需要的附加存储空间,如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的,在许多实际问题中,为了减少算法所占的存储空间,通常采用压缩存储技术,以便尽量减少不必要的额外空间。故本题答案是:空间复杂度。
18.②
【详解】本题考查算法与流程图。i=1,每次循环递增1,循环条件是i<=3,循环体是每次前进1格,循环体结束后,到达的位置是①,接着向左转前进1格,到达位置②结束。故答案为:②
19. 4 分支结构 循环结构 求5个数中的最大值 30 设计算法
【详解】本题主要考查算法流程图。(1)i=1,循环条件是i<=4,故语句i=i+1总共被执行的次数是4次。(2)该算法中用到的两种结构是分支结构和循环结构。(3)分析流程图可知,该程序实现的功能是求5个数中的最大值。(4)若依次输入12、-10、30、19、22,则输出的值是30。(5)编程解决问题的过程分为五个步骤,其中根据问题描述画出流程图属于设计算法。
20.9
【详解】本题考查的是流程图识读。依次输入8、7、9,7>8不成立,9>8成立,执行a、c变量交换,交换后a=9。
【点睛】
21. 顺序 选择(分支)
【详解】本题考查的是算法结构。①是从上至下执行,属于顺序结构,②是根据条件选择A或B执行,属于选择结构。
22.(1)错误语句的编号是 ① 。(1分)(2)修改为 s=0:j=1:n=0 。(2分)
(2)错误语句的编号是 ② 。(1分)(2)修改为 do while j<=10 。(2分)
(3)错误语句的编号是 ③ 。(1分)(2)修改为 x=inputbox(“ ”) 。(2分)
(4)错误语句的编号是 ⑦ 。(1分)(2)修改为 end if 。(2分)
(5)错误语句的编号是 ⑩ 。(1分)(2)修改为 print n 。(2分)
【详解】本题主要考查算法流程图及VB程序调试。分析程序可知,(1)多个变量初始化,使用“:”分隔,故编号①应修改为s=0:j=1:n=0。(2)第②条语句和第⑨条语句对应,采用while循环结构,故编号②应修改为do while j<=10。(3)使用inputbox函数,将接收到的值赋给变量x,故编号③应修改为x=inputbox(“ ”)。(4)条件分支仅采用单分支,没有采用双分支,故编号⑦应修改为end if。(5)对照流程图,最后输出n的值,故编号⑩应修改为print n。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$