第二章 课时2 算法的控制结构 浙教版(2019)必修1(课件 学案 教案三份打包)

资源下载
  1. 二一教育资源

第二章 课时2 算法的控制结构 浙教版(2019)必修1(课件 学案 教案三份打包)

资源简介

课时2 算法的控制结构
课时目标
1.能结合实例,理解算法三种控制结构的概念、特点及适用情境。2.能根据问题求解过程中数据和运算的特点,选择合适的控制结构正确地设计、描述算法。3.理解各种控制结构在解决问题过程中综合运用的必要性。
1.顺序结构
在算法执行流程中,执行完一个处理步骤后,按照次序执行下一个步骤(如图a)。顺序结构的每个步骤按照算法中出现的顺序依次执行;每个步骤一定会被执行一次,而且只执行一次。
2.分支结构
也称为选择结构。在算法执行流程中,先进行条件判断,再根据判断结果分别执行不同处理的控制结构(如图b)。在一个分支结构中,必定有一个分支被执行,其他的分支则被忽略。
3.循环结构
算法执行过程中,在条件控制下,某些操作步骤需要重复执行(循环)的控制结构(如图c)。循环结构的重复执行(循环)是在条件控制下的一种可控的重复,当需要重复处理的条件不满足(或满足)时,重复处理必须能及时结束。
               
例1 某商场促销打折消费规定如下:消费500元以内的打8.8折;满500元打8折,满1000元及以上的打7折。用算法描述这一消费规定,合适的算法控制结构是 (  )
A.顺序结构 B.分支结构 C.循环结构 D.树形结构
答案 B
解析 本题要求根据具体任务确定算法的控制结构。算法有顺序、分支、循环三种基本结构,分析题目描述的促销打折规定,结算时将视消费额分成三种情况进行不同的打折计算,这符合分支结构算法的控制转移思想。
变式训练1 用辗转相除法求两个正整数的最大公约数的算法如下:
①输入两个正整数m和n。
②若m③用m除以n,相除得到余数r。
④若r等于0,则输出n的值,算法结束;否则,执行步骤⑤。
⑤令m←n,n←r,返回步骤③继续执行。
该算法使用的控制结构是 (  )
A.顺序结构 B.分支结构 C.循环结构 D.树形结构
答案 C
解析 本题主要考查的是算法的控制结构。步骤③④⑤构成了一个循环结构,因此答案为C。
例2 角谷猜想描述如下:对于任意一个自然数n,若n为偶数,则将其除以2;若n为奇数,则将其乘以3,然后再加1。按此做法经过有限次的运算后,总可以得到自然数1。验证角谷猜想的部分流程图如图所示,下列说法正确的是 (  )
A.该流程图只包含了分支结构
B.将条件“n=1 ”改为“n>0 ”,功能相同
C.语句“n←n×3+1”可能不会被执行
D.输入n的值为1时,算法将没有输出
答案 C
解析 本题考查算法的表示。A选项算法中循环结构中包含了选择结构。B选项n>0的最小值为1。C选项当n值为1时不再循环,即最后一次循环之前n的值为2,当n的值为2的t次方时(t=1,2,3…),得到n的值均是偶数,因此“n←n×3+1”可能不会被执行。D选项当n的值为1,输出验证成功。
变式训练2 某算法的部分流程图如图所示。
若输入m和n的值分别为8和6,运行该算法后,以下说法正确的是 (  )
A.“n≠0 ”共执行了2次
B.若输入m和n的值分别为6和8,运行结果不变
C.该算法的功能为求解m和n的最大公约数
D.流程图标记“①”所在处理框中的语句调换次序不影响该算法的功能
答案 B
解析 本题考查算法的表示。a的值为48,b的值为2,接着m和n的值依次为6和2,新的b值为0,新的m和n的值依次为2和0,结束循环,输出a/m的值为24。因此程序的功能是求最小公倍数。若输入m和n的值分别为6和8,第一次循环时,b的值为6,交换m和n,结果不变。D选项交换框内语句顺序,会影响程序值的输出。
例3 为了编写程序计算表达式“2-4+6-8+……-100”的值,小李设计的算法部分流程图如图所示。
在流程图中①、②处分别应填入的是 (  )
A.①i=i+1     ②k=-k*2
B.①i=i+2  ②k=-k
C.①k=-k ②i=i+2
D.①k=-k*2 ②i=i+2
答案 C
解析 本题考查循环结构的算法表示。i值递增2,k值的正负用来控制进行加法或减法运算,因此只能为1或-1。而将B选项的步骤带入流程图中会发现,表达式会变成“2-4+6-8+……-100+102”。
变式训练3 某循环结构算法的部分流程图如图所示。下列说法正确的是 (  )
A.①处只能填“N”,②处只能填“Y”
B.必须先执行情况①所指向的任务,才能执行情况②指向的任务
C.“任务序列”为空时,此算法可能不符合有穷性的特征
D.“任务序列”中允许包含分支结构,但不能再包含循环结构
答案 C
解析 本题要求理解循环控制结构的工作原理。循环结构的特点主要有:有条件地重复执行,且能根据条件及时结束执行。如题干图所示,循环进行的条件可以是符合“条件满足”,也可以是直到“条件满足”时退出循环,因此,标号①和标号②无法确定“Y”或“N”。循环结构中的循环体要根据具体情况确定是否需要执行,有可能不执行直接退出而执行下一步的操作。流程图中的“任务序列”如果为空,意味着一旦进入循环体后存在着无法改变循环条件的可能,使得算法出现“死循环”而违背算法有穷性的特征。循环体内可以包含分支结构,也可以包含循环结构。
例4 某算法的部分流程图如图所示,执行该流程图后,下列说法正确的是 (  )
A.s≤40执行了5次
B.语句s←s-n执行了6次
C.输出后s=58
D.输出后n=5
答案 C
解析 本题考查流程图。A选项共执行6次;B选项共执行5次;C选项正确;D选项n的值为6。
变式训练4 在某聊天软件上,用户账号密码验证的过程如图所示。
当用户输入密码时,若第1次输入错误,第2次输入才正确,则整个操作过程的执行流程是 (  )
A.①→②→③→④→⑤
B.①→②→③→④→⑥→⑦
C.①→②→③→④→⑥→②→③→④→⑤
D.①→②→③→④→⑤→⑦→②→③→④→⑤
答案 C
解析 循环结构内部嵌套一个选择结构。第1次密码输入错误,则执行流程①→②→③→④→⑥,第2次输入正确,因此又执行流程②→③→④→⑤,
故答案为C。
例5 某算法的流程图如下,输入为3时,执行该流程后,下列说法错误的是 (  )
A.输出f的值为6
B.“i≤n”执行了4次
C.“f←f×i”共执行了3次
D.交换“f←f×i”和“i←i+1”的位置不会影响执行结果
答案 D
解析 本题考查算法的表示。A选项f的值为1*2*3=6。B选项共循环3次,条件判断4次。D选项交换两条语句,i的值发生变化。
变式训练5 某算法的流程图如图所示,若n、k1、k2的输入值依次为19、0、0,执行这部分流程,则k1和k2的值分别是 (  )
A.2 2 B.2 3 C.3 2 D.3 3
答案 B
解析 本题考查算法的表示。算法的功能是将十进制数n转换成二进制数,k1统计0的个数,k2统计1的个数。19D=10011B。
例6 某算法的部分流程图如图所示,执行这部分流程后,以下说法正确的是 (  )
A.变量a,b的值分别为6,6
B.变量a,b的值分别为6,0
C.步骤b←b-a被执行3次
D.步骤b>0被执行5次
答案 B
解析 本题考查算法的表示。列出表格求值。
b>0 a>b a b
T T 48 18
T T 30 18
T F 12 18
T T 12 6
T F 6 6
F 6 0
C选项步骤b←b-a被执行2次,D选项步骤b>0被执行6次。
变式训练6 某算法的部分流程图如图所示。输入m,n的值为21,14,执行这部分流程后,输出m的值为 (  )
A.2 B.7 C.14 D.21
答案 B
解析 本题考查辗转相除法的流程图应用。
一、基础巩固
1.某算法如图所示,对于该算法理解正确的有 (  )
A.该算法中包含循环结构和分支结构
B.输入电量a为100时,输出y的值为53
C.输入电量a为200时,输出y的值为110.5
D.判断框中代码“a≥50 ”可能会被判断两次
答案 C
解析 本题主要考查的是流程图。本题流程图所使用的是一个多分支结构。输入电量a为100时,执行代码“y←0.53*50+(a-50)*0.56”,因此y的值为54.5;判断框中代码“a≥50 ”最多会被判断一次,当a<50或a≥200时,不会被判断;输入电量a为200时,执行代码“y←0.53*50+150*0.56+(a-200)*0.63”,输出y的值为110.5,因此,答案为C。
               
2.设计一个程序,根据输入的劳务报酬收入计算劳务报酬所得税。解决此问题的流程图如图所示。
若要测试所有分支程序代码是否正确,下列测试数据中最恰当的一组是 (  )
A.500,830,4200 B.500,800,4000 C.0,800,1000 D.400,900,1200
答案 A
解析 从图示来看,该题两个判断框均没有来自出口的流程指向,故为选择结构,他是一个多分支选择结构。根据判断框的条件,有①≤800;②>800且≤4000;③>4000;三种情况,所以测试数据应包括以上三种。
3.某流程图如图所示,若输入k的值为9,最终i、s的值分别为 (  )
A.11 0 B.11 -11 C.9 0 D.9 -9
答案 B
解析 本题考查算法的表示。变量i每次增加2,i的值依次为1,3,5,7,9,11,退出循环时为11,共循环了5次,3的倍数之和为(3+9=12),其余之和为(5+7+11=23)。
4.某算法的部分流程图如图所示,执行这部分流程后,依次输入9、2、8、18、-1,则输出值是 (  )
A.9     B.18 C.-1 D.2
               
答案 B
解析 本题考查算法的表示。当条件a>b成立时,b更新为a的值,因此程序的功能是求输入的最大值。
5.某算法的部分流程图如图所示,执行该流程后,变量sum的值为 (  )
A.20 B.25 C.45 D.60
答案 A
6.某算法的部分流程图如图所示,执行这部分流程,若输入n的值为20,则输出a,b的值分别是 (  )
A.12 10 B.10 9 C.9 15 D.9 10
答案 D
解析 本题考查流程图阅读的相关知识。该流程图属于循环结构,该流程图需记录每次循环变量的变化或找规律。
①T,T,a=3,n=17  ②T,F,b=5,n=12
③T,T,a=6,n=9 ④T,F,b=10,n=4
⑤T,T,a=9,n=1 ⑥F跳出。
7.某算法部分流程图如图所示。
执行这部分流程,依次输入12、-5、29、18、7,则输出值是 (  )
A.12 B.-5 C.29 D.7
答案 C
解析 该算法为循环结构,找输入数中的最大数。执行过程如表所示。
i b i≤4 a a>b
1 b=12 Y a=-5 N
2 Y a=29 Y
3 b=29 Y a=18 N
4 Y a=7 N
5 N
8.某算法部分流程图如图所示。执行这部分流程,依次输入20、-3、10、8、-11、0,则输出值是 (  )
A.-11 B.-3 C.8 D.20
答案 C
解析 该流程可得出其功能是:求输入序列中大于0的最小数,故最后b的值为8,选项C正确。本题也可以通过直接代入的方法求解,一样可以求得正确答案。
9.某算法的部分流程图如图所示。执行这部分流程,若输入a的值为22,则输出b的值为 (  )
A.0 B.1 C.2 D.16
答案 C
解析 本题考查流程图相关知识。采用列表跟踪法。
条件a=b a>b a b
初值 22 16
False False 6 8
False True 6 4
False True 2 2
True
从表格中可以获取的信息有,循环条件被执行了4次,循环体语句执行了3循环结束后,变量a、b的值都是2。熟练以后,表格可以不用画。
10.某算法的流程图如图所示。执行这个流程图时,依次输入5、4、6、-8、4、0,下列说法正确的是 (  )
A.a≠0执行了4次
B.s=s*x+a语句执行了5次
C.输出的s值是表达式4*54+6*53-8*52+4*5的值
D.输出的s值是表达式4*53+6*52-8*5+4的值
答案 D
解析 本题主要考查的是循环结构流程图。执行过程如表所示。
条件a≠0 s a x
初值 0 4 5
True 4 6 5
True 4*5+6 -8 5
True (4*5+6)*5-8 4 5
True ((4*5+6)*5-8)*5+4 0 5
False
二、能力提升
11.某算法的部分流程如图所示。进入流程前b的初值为0,流程执行后,依次输入3,-2,1,4,则输出的值是 (  )
              
A.8 B.11 C.19 D.21
答案 B
解析 本题考查算法流程。
条件b≤8 a b a>b b
初值 0 0 0
True 3 8 False 8
True -2 -7 True -2
True 1 2 False 2
True 4 11 False 11
False
12.某算法的部分流程图如图所示。执行这部分流程,分别输入35、50、60,则输出值依次为 (  )
              
A.10,3 B.10,4
C.7,10,4 D.10,12,3
答案 B
解析 流程图中有两个输出,一个是变量r满足713.某算法的部分流程图如图所示,以下说法正确的是 (  )
A.该流程执行后,变量k的值是-1
B.该流程执行后,变量a的值是16
C.该流程用于计算并输出1+8-16的值
D.该流程完整执行1次,“a<32 ”共执行了3次
答案 D
解析 从图中可以看出,a的值依次为8、16、32,k的值依次为1、0、1,s=1*8+(0*16)。当a的值为32时,a<32 不成立,退出循环,因此该条件判断了3次,循环体执行2次。
14.某算法的部分流程图如图所示。
当输入n的值为4时,则a,b的值分别为 (  )
A.5 5 B.16 16 C.16 32 D.34 55
答案 D
解析 本题考查算法的表示。本题实现求斐波那契数列第n+1项的功能,共循环了4次。
i 0 1 2 3
a 2 5 13 34
b 3 8 21 55
               
15.某算法的部分流程图如图所示。执行这部分流程,输出的s和i的值分别是 (  )
A.26 9 B.28 11 C.30 9 D.30 11
答案 D
解析 本题主要考查算法流程图的阅读。该流程图表示的是循环结构算法,执行过程如表所示。
s<=15 s t i
初始值 0 2 1
True 2 0 3
True 2 2 5
True 12 0 7
True 12 2 9
True 30 0 11
False
16.某算法的部分流程图如图所示,以下说法正确的是 (  )
A.该流程执行后,变量b的值是16
B.该流程中包含两个循环结构
C.该流程完整执行1次,“a←a-b”共执行了3次
D.该流程用于计算并输出32和24的最大公约数
答案 D
解析 该算法是循环结构中包含一个选择结构,该算法是更相减损法求最大公约数。(共42张PPT)
课时2 算法的控制结构
第二章 算法与问题解决
1.能结合实例,理解算法三种控制结构的概念、特点及适用情境。
2.能根据问题求解过程中数据和运算的特点,选择合适的控制结构正确地设计、描述算法。
3.理解各种控制结构在解决问题过程中综合运用的必要性。
目 录
CONTENTS
知识梳理
01
例题精析
02
巩固与提升
03
知识梳理
1
1.顺序结构
在算法执行流程中,执行完一个处理步骤后,按照次序执行下一个步骤(如图a)。顺序结构的每个步骤按照算法中出现的顺序依次执行;
__________________________________________ 。
2.分支结构
也称为选择结构。在算法执行流程中,先进行条件判断,再根据判断结果分别执行不同处理的控制结构(如图b)。在一个分支结构中,
______________________,其他的分支则被忽略。
每个步骤一定会被执行一次,而且只执行一次
必定有一个分支被执行
3.循环结构
算法执行过程中,在条件控制下,某些操作步骤需要重复执行(循环)的控制结构(如图c)。循环结构的重复执行(循环)是在条件控制下的一种可控的重复,当需要重复处理的条件不满足(或满足)时,________________________ 。
重复处理必须能及时结束
例题精析
2
例1 某商场促销打折消费规定如下:消费500元以内的打8.8折;满500元打8折,满1000元及以上的打7折。用算法描述这一消费规定,合适的算法控制结构是 (  )
A.顺序结构 B.分支结构
C.循环结构 D.树形结构
B
解析 本题要求根据具体任务确定算法的控制结构。算法有顺序、分支、循环三种基本结构,分析题目描述的促销打折规定,结算时将视消费额分成三种情况进行不同的打折计算,这符合分支结构算法的控制转移思想。
变式训练1 用辗转相除法求两个正整数的最大公约数的算法如下:
①输入两个正整数m和n。
②若m③用m除以n,相除得到余数r。
④若r等于0,则输出n的值,算法结束;否则,执行步骤⑤。
⑤令m←n,n←r,返回步骤③继续执行。
该算法使用的控制结构是(  )
A.顺序结构 B.分支结构
C.循环结构 D.树形结构
解析 本题主要考查的是算法的控制结构。步骤③④⑤构成了一个循环结构,因此答案为C。
C
例2 角谷猜想描述如下:对于任意一个自然数n,若n为偶数,则将其除以2;若n为奇数,则将其乘以3,然后再加1。按此做法经过有限次的运算后,总可以得到自然数1。验证角谷猜想的部分流程图如图所示,下列说法正确的是 (  )
A.该流程图只包含了分支结构
B.将条件“n=1 ”改为“n>0 ”,功能相同
C.语句“n←n×3+1”可能不会被执行
D.输入n的值为1时,算法将没有输出
解析 本题考查算法的表示。A选项算法中循环结构中包含了选择结构。B选项n>0的最小值为1。C选项当n值为1时不再循环,即最后一次循环之前n的值为2,当n的值为2的t次方时(t=1,2,3…),得到n的值均是偶数,因此“n←n×3+1”可能不会被执行。D选项当n的值为1,输出验证成功。
C
变式训练2 某算法的部分流程图如图所示。
若输入m和n的值分别为8和6,运行该算法后,以下说法正确的
是(  )
A.“n≠0 ”共执行了2次
B.若输入m和n的值分别为6和8,运行结果不变
C.该算法的功能为求解m和n的最大公约数
D.流程图标记“①”所在处理框中的语句调换次序不影响该算法的功能
解析 本题考查算法的表示。a的值为48,b的值为2,接着m和n的值依次为6和2,新的b值为0,新的m和n的值依次为2和0,结束循环,输出a/m的值为24。因此程序的功能是求最小公倍数。若输入m和n的值分别为6和8,第一次循环时,b的值为6,交换m和n,结果不变。D选项交换框内语句顺序,会影响程序值的输出。
B
例3 为了编写程序计算表达式“2-4+6-8+……-100”的值,小李设
计的算法部分流程图如图所示。
在流程图中①、②处分别应填入的是(  )
A.①i=i+1    ②k=-k*2
B.①i=i+2 ②k=-k
C.①k=-k②i=i+2
D.①k=-k*2②i=i+2
解析 本题考查循环结构的算法表示。i值递增2,k值的正负用来控制进行加法或减法运算,因此只能为1或-1。而将B选项的步骤带入流程图中会发现,表达式会变成“2-4+6-8+……-100+102”。
C
变式训练3 某循环结构算法的部分流程图如图所示。下列说法正确的是 (  )
A.①处只能填“N”,②处只能填“Y”
B.必须先执行情况①所指向的任务,才能执行情况②
指向的任务
C.“任务序列”为空时,此算法可能不符合有穷性的特征
D.“任务序列”中允许包含分支结构,但不能再包含循环结构
解析 本题要求理解循环控制结构的工作原理。循环结构的特点主要有:有条件地重复执行,且能根据条件及时结束执行。如题干图所示,循环进行的条件可以是符合“条件满足”,也可以是直到“条件满足”时退出循环,因此,标号①和标号②无法确定“Y”或“N”。循环结构中的循环体要根据具体情况确定是否需要执行,有可能不执行直接退出而执行下一步的操作。流程图中的“任务序列”如果为空,意味着一旦进入循环体后存在着无法改变循环条件的可能,使得算法出现“死循环”而违背算法有穷性的特征。循环体内可以包含分支结构,也可以包含循环结构。
C
例4 某算法的部分流程图如图所示,执行该流程图后,
下列说法正确的是 (  )
A.s≤40执行了5次
B.语句s←s-n执行了6次
C.输出后s=58
D.输出后n=5
解析 本题考查流程图。A选项共执行6次;B选项共执行5次;C选项正确;D选项n的值为6。
C
变式训练4 在某聊天软件上,用户账号密码验证的过程如图所示。
当用户输入密码时,若第1次输入错误,第2次输入才正确,则整个操作过程的执行流程是(  )
A.①→②→③→④→⑤
B.①→②→③→④→⑥→⑦
C.①→②→③→④→⑥→②→③→④→⑤
D.①→②→③→④→⑤→⑦→②→③→④→⑤
解析 循环结构内部嵌套一个选择结构。第1次密码输入错误,则执行流程①→②→③→④→⑥,第2次输入正确,因此又执行流程②→③→④→⑤,故答案为C。
C
A.输出f的值为6
B.“i≤n”执行了4次
C.“f←f×i”共执行了3次
D.交换“f←f×i”和“i←i+1”的位置不会影响执行结果
解析 本题考查算法的表示。A选项f的值为1*2*3=6。B选项共循环3次,条件判断4次。D选项交换两条语句,i的值发生变化。
D
变式训练5 某算法的流程图如图所示,若n、k1、k2的输入值依次为19、0、0,执行这部分流程,则k1和k2的值分别是 (  )
解析 本题考查算法的表示。算法的功能是将十进制数n转换成二进制数,k1统计0的个数,k2统计1的个数。19D=10011B。
B
A.2 2 B.2 3 C.3 2 D.3 3
例6 某算法的部分流程图如图所示,执行这部分流程后,以下说法正确的是 (  )
B
A.变量a,b的值分别为6,6 B.变量a,b的值分别为6,0
C.步骤b←b-a被执行3次 D.步骤b>0被执行5次
C选项步骤b←b-a被执行2次,D选项步骤b>0被执行6次。
解析 本题考查算法的表示。列出表格求值。
b>0 a>b a b
T T 48 18
T T 30 18
T F 12 18
T T 12 6
T F 6 6
F 6 0
变式训练6 某算法的部分流程图如图所示。输入m,n的
值为21,14,执行这部分流程后,输出m的值为 (  )
A.2 B.7 C.14 D.21
解析 本题考查辗转相除法的流程图应用。
B
3
巩固与提升
基础巩固
能力提升
1.某算法如图所示,对于该算法理解正确的有 (  )
A.该算法中包含循环结构和分支结构
B.输入电量a为100时,输出y的值为53
C.输入电量a为200时,输出y的值为110.5
D.判断框中代码“a≥50 ”可能会被判断两次
C
解析 本题主要考查的是流程图。本题流程图所使用的是一个多分支结构。输入电量a为100时,执行代码“y←0.53*50+(a-50)*0.56”,因此y的值为54.5;判断框中代码“a≥50 ”最多会被判断一次,当a<50或a≥200时,不会被判断;输入电量a为200时,执行代码“y←0.53*50+150*0.56+(a-200)*0.63”,输出y的值为110.5,因此,答案为C。
2.设计一个程序,根据输入的劳务报酬收入计算劳务报酬所得税。解决此问题的流程图如图所示。
若要测试所有分支程序代码是否正确,下列测试
数据中最恰当的一组是(  )
A.500,830,4200 B.500,800,4000
C.0,800,1000 D.400,900,1200
A
解析 从图示来看,该题两个判断框均没有来自出口的流程指向,故为选择结构,他是一个多分支选择结构。根据判断框的条件,有①≤800;②>800且≤4000;③>4000;三种情况,所以测试数据应包括以上三种。
3.某流程图如图所示,若输入k的值为9,最终i、s的值分别为 (  )
B
解析 本题考查算法的表示。变量i每次增加2,i的值依次为1,3,5,7,9,11,退出循环时为11,共循环了5次,3的倍数之和为(3+9=12),其余之和为(5+7+11=23)。
A.11 0 B.11 -11 C.9 0 D.9 -9
4.某算法的部分流程图如图所示,执行这部分流程后,依次输入9、2、8、18、-1,则输出值是 (  )
A.9    B.18 C.-1 D.2
B
解析 本题考查算法的表示。当条件a>b成立时,b更新为a的值,因此程序的功能是求输入的最大值。
5.某算法的部分流程图如图所示,执行该流程后,变量sum的值为 (  )
A
A.20 B.25 C.45 D.60
6.某算法的部分流程图如图所示,执行这部分流程,若输入n的值为20,则输出a,b的值分别是 (  )
D
解析 本题考查流程图阅读的相关知识。
该流程图属于循环结构,该流程图需记录每次循环变量的变化或找规律。
①T,T,a=3,n=17 ②T,F,b=5,n=12
③T,T,a=6,n=9④T,F,b=10,n=4
⑤T,T,a=9,n=1⑥F跳出。
A.12 10 B.10 9
C.9 15 D.9 10
7.某算法部分流程图如图所示。
C
执行这部分流程,依次输入12、-5、29、18、7,则输出值是 (  )
A.12 B.-5 C.29 D.7
解析 该算法为循环结构,找输入数中的最大数。执行过程如表所示。
i b i≤4 a a>b
1 b=12 Y a=-5 N
2 Y a=29 Y
3 b=29 Y a=18 N
4 Y a=7 N
5 N
8.某算法部分流程图如图所示。执行这部分流程,依次输入20、-3、10、8、-11、0,则输出值是 (  )
C
解析 该流程可得出其功能是:求输入序列中大于0的最小数,故最后b的值为8,选项C正确。本题也可以通过直接代入的方法求解,一样可以求得正确答案。
A.-11 B.-3 C.8 D.20
9.某算法的部分流程图如图所示。执行这部分流程,若输入a的值为22,则输出b的值为 (  )
C
A.0 B.1 C.2 D.16
解析 本题考查流程图相关知识。采用列表跟踪法。
条件a=b a>b a b
初值 22 16
False False 6 8
False True 6 4
False True 2 2
True
从表格中可以获取的信息有,循环条件被执行了4次,循环体语句执行了3循环结束后,变量a、b的值都是2。熟练以后,表格可以不用画。
10.某算法的流程图如图所示。执行这个流程图时,依次输入5、4、6、-8、4、0,下列说法正确的是 (  )
D
A.a≠0执行了4次
B.s=s*x+a语句执行了5次
C.输出的s值是表达式4*54+6*53-8*52+4*5的值
D.输出的s值是表达式4*53+6*52-8*5+4的值
解析 本题主要考查的是循环结构流程图。执行过程如表所示。
条件a≠0 s a x
初值 0 4 5
True 4 6 5
True 4*5+6 -8 5
True (4*5+6)*5-8 4 5
True ((4*5+6)*5-8)*5+4 0 5
False
11.某算法的部分流程如图所示。进入流程前b的初值为0,流程执行后,依次输入3,-2,1,4,则输出的值是 (  )
B
A.8 B.11 C.19 D.21
解析 本题考查算法流程。
条件b≤8 a b a>b b
初值 0 0 0
True 3 8 False 8
True -2 -7 True -2
True 1 2 False 2
True 4 11 False 11
False
12.某算法的部分流程图如图所示。执行这部分流程,分别输入35、50、60,则输出值依次为 (  )
B
A.10,3 B.10,4
C.7,10,4 D.10,12,3
解析 流程图中有两个输出,一个是变量r满足7D
13.某算法的部分流程图如图所示,以下说法正确的是 (  )
解析 从图中可以看出,a的值依次为8、16、32,k的值依次为1、0、1,s=1*8+(0*16)。当a的值为32时,a<32 不成立,退出循环,因此该条件判断了3次,循环体执行2次。
A.该流程执行后,变量k的值是-1
B.该流程执行后,变量a的值是16
C.该流程用于计算并输出1+8-16的值
D.该流程完整执行1次,“a<32 ”共执行了3次
14.某算法的部分流程图如图所示。
D
解析 本题考查算法的表示。本题实现求斐波那契数列第n+1项的功能,共循环了4次。
当输入n的值为4时,则a,b的值分别为 (  )
A.5 5 B.16 16 C.16 32 D.34 55
i 0 1 2 3
a 2 5 13 34
b 3 8 21 55
D
15.某算法的部分流程图如图所示。执行这部分流程,输出的s和i的值分别是 (  )
D
A.26 9 B.28 11
C.30 9 D.30 11
解析 本题主要考查算法流程图的阅读。该流程图表示的是循环结构算法,执行过程如表所示。
s<=15 s t i
初始值 0 2 1
True 2 0 3
True 2 2 5
True 12 0 7
True 12 2 9
True 30 0 11
False
16.某算法的部分流程图如图所示,以下说法正确的是 (  )
D
解析 该算法是循环结构中包含一个选择结构,该算法是更相减损法求最大公约数。
A.该流程执行后,变量b的值是16
B.该流程中包含两个循环结构
C.该流程完整执行1次,“a←a-b”共执行了3次
D.该流程用于计算并输出32和24的最大公约数课时2 算法的控制结构
课时目标
1.能结合实例,理解算法三种控制结构的概念、特点及适用情境。2.能根据问题求解过程中数据和运算的特点,选择合适的控制结构正确地设计、描述算法。
3.理解各种控制结构在解决问题过程中综合运用的必要性。
1.顺序结构
在算法执行流程中,执行完一个处理步骤后,按照次序执行下一个步骤(如图a)。顺序结构的每个步骤按照算法中出现的顺序依次执行;
______________________,________________。
2.分支结构
也称为选择结构。在算法执行流程中,先进行条件判断,再根据判断结果分别执行不同处理的控制结构(如图b)。在一个分支结构中,________________________,其他的分支则被忽略。
3.循环结构
算法执行过程中,在条件控制下,某些操作步骤需要重复执行(循环)的控制结构(如图c)。循环结构的重复执行(循环)是在条件控制下的一种可控的重复,当需要重复处理的条件不满足(或满足)时,________________________。
例1 某商场促销打折消费规定如下:消费500元以内的打8.8折;满500元打8折,满1000元及以上的打7折。用算法描述这一消费规定,合适的算法控制结构是(  )
A.顺序结构 B.分支结构
C.循环结构 D.树形结构
听课笔记:                                    
                                    
变式训练1 用辗转相除法求两个正整数的最大公约数的算法如下:
①输入两个正整数m和n。
②若m③用m除以n,相除得到余数r。
④若r等于0,则输出n的值,算法结束;否则,执行步骤⑤。
⑤令m←n,n←r,返回步骤③继续执行。
该算法使用的控制结构是(  )
A.顺序结构  B.分支结构 
C.循环结构  D.树形结构
例2 角谷猜想描述如下:对于任意一个自然数n,若n为偶数,则将其除以2;若n为奇数,则将其乘以3,然后再加1。按此做法经过有限次的运算后,总可以得到自然数1。验证角谷猜想的部分流程图如图所示,下列说法正确的是(  )
A.该流程图只包含了分支结构
B.将条件“n=1?”改为“n>0?”,功能相同
C.语句“n←n×3+1”可能不会被执行
D.输入n的值为1时,算法将没有输出
听课笔记:                                    
                                    
变式训练2 某算法的部分流程图如图所示。
若输入m和n的值分别为8和6,运行该算法后,以下说法正确的是(  )
A.“n≠0?”共执行了2次
B.若输入m和n的值分别为6和8,运行结果不变
C.该算法的功能为求解m和n的最大公约数
D.流程图标记“①”所在处理框中的语句调换次序不影响该算法的功能
例3 为了编写程序计算表达式“2-4+6-8+……-100”的值,小李设计的算法部分流程图如图所示。
在流程图中①、②处分别应填入的是(  )
A.①i=i+1    ②k=-k*2
B.①i=i+2  ②k=-k
C.①k=-k ②i=i+2
D.①k=-k*2 ②i=i+2
听课笔记:                                    
                                    
变式训练3 某循环结构算法的部分流程图如图所示。下列说法正确的是(  )
A.①处只能填“N”,②处只能填“Y”
B.必须先执行情况①所指向的任务,才能执行情况②指向的任务
C.“任务序列”为空时,此算法可能不符合有穷性的特征
D.“任务序列”中允许包含分支结构,但不能再包含循环结构
例4 某算法的部分流程图如图所示,执行该流程图后,下列说法正确的是(  )
A.s≤40执行了5次 B.语句s←s-n执行了6次
C.输出后s=58 D.输出后n=5
听课笔记:                                    
                                    
变式训练4 在某聊天软件上,用户账号密码验证的过程如图所示。
当用户输入密码时,若第1次输入错误,第2次输入才正确,则整个操作过程的执行流程是(  )
A.①→②→③→④→⑤
B.①→②→③→④→⑥→⑦
C.①→②→③→④→⑥→②→③→④→⑤
D.①→②→③→④→⑤→⑦→②→③→④→⑤
例5 某算法的流程图如下,输入为3时,执行该流程后,下列说法错误的是(  )
A.输出f的值为6
B.“i≤n”执行了4次
C.“f←f×i”共执行了3次
D.交换“f←f×i”和“i←i+1”的位置不会影响执行结果
听课笔记:                                    
                                    
变式训练5 某算法的流程图如图所示,若n、k1、k2的输入值依次为19、0、0,执行这部分流程,则k1和k2的值分别是(  )
A.2 2 B.2 3
C.3 2 D.3 3
例6 某算法的部分流程图如图所示,执行这部分流程后,以下说法正确的是(  )
A.变量a,b的值分别为6,6
B.变量a,b的值分别为6,0
C.步骤b←b-a被执行3次
D.步骤b>0被执行5次
听课笔记:                                    
                                    
                                    
                                    
变式训练6 某算法的部分流程图如图所示。输入m,n的值为21,14,执行这部分流程后,输出m的值为(  )
A.2 B.7
C.14 D.21

展开更多......

收起↑

资源列表