课时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。 ②若m0 ”,功能相同 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 ... ...
~~ 您好,已阅读到文档的结尾了 ~~