(共66张PPT)
模块七 算法与程序设计初步
第二节 程序的基本结构
第一节 算法与问题解决
第三节 程序的设计与表达
【考点导航】
第一节 算法与问题解决
知识单元 知识点 要点说明
算法与问题解决 算法 体验算法思想及其意义,初步了解算法
问题解决 能结合生活中的具体问题,会使用自然语言和流程图描述算法
知道流程图的基本图例
流程图 【教材梳理】
一、算法
1. 算法的含义
简单来说,算法就是解决问题的具体方法和步骤。
2. 算法的特征
有穷性、确定性、能行性、有0个或多个输入、有1个或多个输出。
二、算法思想及其意义
算法是根本,编程语言是呈现算法的基础。不同的问题适于不同的算法,同样的问题也可以通过不同的算法来解决,且存在优劣之分。
三、算法的描述
1. 自然语言
用日常使用的语言描述算法,即自然语言描述法。如:高速公路上的雷达测速系统,用自然语言描述如下:
步骤1:开启检测设备
步骤2:判断是否有通过车辆车速超过120公里/小时的
步骤3:如果有,拍照
步骤4:没有,继续检测通过车辆车速
2. 流程图
流程图是由一些图框和带箭头的路程线组成的,其中图框表示各种操作的类型,图框中的文字和符号表示操作的内容,带箭头的流程线表示操作的先后次序。流程图直观、清晰、易懂,便于检查及修改。如:高速公路上的雷达测速系统,用流程图描述为:
3.流程图基本图例
【易错剖析】
下列对算法的认识,正确的是 。
A. 算法就是求解数学问题
B. 算法就是计算机程序
C. 算法就是编程
D. 算法是精确描述问题的方法
【剖析】本题考查学生对算法概念的理解及算法和程序的区别。算法简单地说就是解决问题的方法,书面表达为精确描述问题的方法,程序可以实现算法,但不是算法。
【答案】D
答案:B
【课后集训】
1. 小张同学想通过程序设计解决“输入密码才能打开程序”的问题,在设计算法前应该 。
A. 获得结果 B. 分析问题
C. 编写程序 D. 运行程序
答案:C
2. 查英文字典的方法是根据需要查找的单词的首字母来选取对应的页码,再根据次字母继续查找逐步找到对应的单词。这是早期用自然语言对查英文字典 的描述。
A. 编写程序 B. 流程图
C. 算法 D. 计算机程序
答案:D
3. 编程解决问题时,首先应该确定程序“做什么”,然后再确定程序“如何做”。“如何做”属于用计算机解决问题的步骤中的 。
A. 分析问题 B. 调试程序
C. 编写程序 D. 设计算法
4. 日常生活中使用到的声控灯的算法描述如下:
步骤1:开启检测设备
步骤2:判断是否有大于一定频率的声音
步骤3:如果有,声控开关启动,灯亮
步骤4:延时一定时间后,声控开关自动关闭,灯灭
上述算法的描述采用了 。
A. 自然语言 B. 机器语言
C. 流程图 D. 程序设计语言
答案:A
5. 雷达测速拍照系统的算法描述如下图所示。此算法的描述采用了 。
A. 自然语言 B. 机器语言
C. 流程图 D. 程序设计语言
答案:C
6. 地下车库车位标识灯的算法描述如下:
步骤1:开启检测设备
步骤2:判断是否有车停泊在车位上
步骤3:如果有,亮红灯;如果没有,亮绿灯
上述算法的描述采用了 。
A. 思维导图 B. 流程图
C. 机器语言 D. 自然语言
答案:D
7. 分析下图所示流程图,可推测该算法要解决的问题是 。
A. 测量圆的半径
B. 计算圆的周长
C. 推导圆周率
D. 计算圆的直径
答案:B
8. 已知圆的半径是r,用公式C=2πr计算此圆的周长C的步骤如下:
①输出C
②计算C=2πr
③输入圆的半径r
④结束
正确的顺序是 。
A. ①②③④ B. ③②④②
C. ③②①④ D. ②③④③
答案:C
9. 人们除了用自然语言描述算法外,还常借助图形使算法描述更加清晰。这种以特定的图形符号和说明表示算法的图,称为 。
A. 思维导图 B. 流程图
C. 线框图 D. 程序图
答案:B
10. 流程图中,若要表示条件“A>B”是否成立,要用
。
A. 平行四边形 B. 菱形
C. 圆角矩形 D. 直角矩形
答案:B
11. 某航空公司允许乘客携带不超过20千克的行李,右图所示检测行李重量的算法流程图中,可推测菱形部分的功能是 。
A. 判断行李是否超过20千克
B. 输入行李的重量
C. 输出行李的重量
D. 输出超重部分重量
答案:A
12. 若想使用计算机编写一个班费管理系统,首先弄清了该系统要实现的功能,然后开始思考如何实现这些功能,最后在老师的帮助下编写简单的代码并进行测试。“如何实现软件要达到的功能”称为 。
A. 分析问题 B. 设计算法
C. 编写程序 D. 调试程序
答案:B
13. 下列选项描述的问题中,最适合通过程序设计来解决的是 。
A. 制作电子相册
B. 制作环保宣传的动画
C. 在因特网上查找资料
D. 1~1000之间所有偶数之和
答案:D
14. 在地铁站自动售票机买票的关键算法描述如下:
步骤1:选择地铁线路
步骤2:选择目的地
步骤3:选择需要购买的地铁票数量
步骤4:放入一张纸币或一枚硬币
步骤5:如果多次投币,执行步骤4
步骤6:若投入的钱币已达到或超过票价,执行步骤7
步骤7:出票及找零
上述算法的描述采用了 。
A. 自然语言 B. 机器语言 C. 流程图 D. 程序设计语言
答案:A
15. 以下关于算法的描述,错误的是 。
A. 算法可以用自然语言描述
B. 算法必须在有限步骤内实现
C. 流程图是算法的一种表示形式
D. 解决一个问题只有一种算法
答案:D
返回目录
第二节 程序的基本结构
【考点导航】
知识单元 知识点 要点说明
程序的基本结构 程序的基本结构 顺序结构、分支结构、循环结构
顺序结构 通过感悟生活中的顺序行为,学会编写具有顺序结构的简单程序
分支结构 通过感悟生活中的选择行为,学会编写具有判断功能的简单程序
循环结构 通过感悟生活中的重复行为,学会编写具有循环功能的简单程序
【教材梳理】
一、程序的基本结构
程序结构主要有顺序结构、分支结构和循环结构三种基本结构,以及由这三种组合而成的混合结构。
二、顺序结构
从上往下,依次进行多个处理的结构称为顺序结构。如下图所示,顺序结构流程图最大的特点是执行框一直往下,没有判断框和回指的流程线。顺序结构是一种最简单、最基本的程序结构。
三、分支结构
程序有多个分支,运行到一定的位置时,需要根据条件来选择运行哪一个分支,条件成立则在流程线上标注“是”或者“Y”;条件不成立则在流程图上标注“否”或者“N”。如下图所示,分支结构流程图最大的特点是至少有一个判断框,没有回指的流程线。
四、循环结构
需要重复执行某一操作,直到达到条件为止。循环结构是最能发挥计算机特长的程序结构。如下图所示,循环结构流程图最大的特点是有回指的路程线。
【易错剖析】
下图为编写小猫数数的Scratch代码。要求:让小猫从1开始数数,依次数下去,重复执行直至数到60,击打鼓声,程序停止。此程序红框部分主要是利用 实现的。
A. 循环结构
B. 分支结构
C. 顺序结构
D. 判断结构
【剖析】本题考查学生对程序三种结构的辨别。程序结构主要有顺序结构、分支结构和循环结构三种基本结构。指从上往下,依次进行多个处理的结构是顺序结构,其流程图上最大的特点是执行框一直往下,没有判断框和回指的流程线,程序上不会出现判断或者重复执行等指令块。程序运行到一定的位置时,需要根据条件来选择运行哪一个分支的结构是分支结构,其流程图上最大的特点是至少有一个判断框,没有回指的流程线,程序上会出现判断指令块。程序需要重复执行某一操作,直到达到条件为止的结构是循环结构,其流程图上最大的特点是有回指的路程线,程序上会出现重复执行指令块。上图所示程序的红框部分出现重复执行指令块,可判断其主要是利用循环结构实现的。
【答案】A
答案:D
【课后集训】
1. 程序的三种基本结构是 。
A. 流程结构、分散结构、判断结构
B. 流程结构、循环结构、分支结构
C. 流程结构、分散结构、循环结构
D. 顺序结构、分支结构、循环结构
2. 程序运行到一定位置,根据判断条件是否成立来选择执行方向的结构属于 。
A. 顺序结构 B. 循环结构
C. 分支结构 D. 树形结构
答案:C
3. 在“大鱼吃小鱼”的游戏中,让大鱼跟随鼠标移动的算法描述如下:
步骤1:判断大鱼到鼠标指针的距离
步骤2:如果大鱼到鼠标指针的距离大于5,那么就让大鱼面向指针移动5步,否则大鱼就不移动
要完成以上两个步骤,可选择的程序结构是 。
A. 树形结构 B. 循环结构
C. 顺序结构 D. 分支结构
答案:D
4. 程序设计由顺序结构、分支结构、循环结构三种基本结构组成。某程序中设计的算法如下:
a = 4
b = 9
c =2(b + a)
上述算法属于 。
A. 分支结构 B. 顺序结构
C. 循环结构 D. 网络结构
答案:B
5. 程序的基本结构可以用流程图来描述。下图所示流程图的程序结构是 。
A. 判断结构 B. 顺序结构
C. 分支结构 D. 循环结构
答案:B
6. 某小区地下车库使用程序控制车闸起落,当车辆需要进入车库时,先对车牌拍照,然后根据车牌判断是否是小区车辆。完成该功能适合的算法结构是 。
A. 循环结构 B. 树形结构
C. 分支结构 D. 顺序结构
答案:C
7. 根据垃圾袋的颜色进行垃圾分类:红色为有害垃圾,绿色为厨余垃圾,蓝色为可回收物,灰色为其他垃圾。通过颜色传感器判断垃圾袋的颜色,该程序的算法描述如下:
步骤1:检测垃圾袋颜色
步骤2:如果为红色,则自动放入有害垃圾箱;如果为绿色,则自动放入厨余垃圾箱;如果为蓝色,则自动放入可回收物箱;如果为灰色,则自动放入其他垃圾箱
该算法描述也可以使用 的流程图表示。
A. 顺序结构 B. 分支结构
C. 循环结构 D. 网络结构
答案:B
8. 王强设计了一个程序:当输入考成绩A后,如果成绩小于80分则显示“不合格”,如果成绩大于等于80分则显示“优秀”。可判断该程序结构属于 。
A. 顺序结构
B. 循环结构
C. 分支结构
D. 树形结构
答案:C
9. 下图是小球移动程序中的一个片段。当按下空格键时,小球先返回起点,然后移动100步。该片段红框中的程序采用的是 。
A. 顺序结构
B. 网络结构
C. 分支结构
D. 循环结构
答案:A
10. 行人过红绿灯路口的自然语言算法描述如下:
步骤1:走到红绿灯路口
步骤2:绿灯亮,走斑马线过马路
步骤3:红灯亮,停下等待
该算法可以采用 的程序来实现。
A. 顺序结构 B. 树形结构
C. 分支结构 D. 循环结构
答案:C
11. 下图所示片段程序采用的是 结构。
A. 顺序结构
B. 循环结构
C. 分支结构
D. 网络结构
答案:C
12. 车子定速巡航系统中,检测到小车时速超过100公里时,会自动把时速降低10公里,否则就维持90公里时速行进。该算法描述也可以使用 的流程图表示。
A. 分支结构
B. 循环结构
C. 传动结构
D. 顺序结构
答案:A
13. 下图所示流程图属于程序结构中的 。
A. 判断结构
B. 顺序结构
C. 分支结构
D. 循环结构
答案:D
14. 下图所示的部分流程图主要表示的程序结构是 。
A. 顺序结构
B. 分支结构
C. 分散结构
D. 循环结构
答案:D
15. 循环结构的流程图最大的特点是 。
A. 至少有一个判断框,没有回指的流程线
B. 有回指的流程线
C. 没有判断框和回指的流程线
D. 有执行框,没有回指的流程线
答案:B
返回目录
第三节 程序的设计与表达
【考点导航】
知识单元 知识点 要点说明
程序的设计与表达 程序表达 能够读懂简单的程序流程图,知道程序表达的基本意义
程序设计 通过分析生活问题,设计混合程序结构解决问题,了解程序设计的一般过程
【教材梳理】
一、程序表达
算法是为一个问题或一类问题给出的解决方法与具体步骤,是对问题求解过程的一种准确而完整的逻辑描述。程序则是为了用计算机解题或控制某一过程而编排的一系列指令的集合。程序不等于算法。但是,通过程序设计可以在计算机上实现算法。
如楼道声控灯:光线暗了,楼道里的声音检测设备开启,如果感测到声音响度大于25,则声控灯自动打开,15秒后自动关闭。用自然语言描述算法:
步骤1:光线暗了,声音检测设备开启
步骤2:感测(判断)是否有响度大于25的声音
步骤3:如果有,灯亮,等待15秒,灯灭
用流程图描述算法: 程序实现:
二、程序设计的一般过程
1. 程序设计的一般过程
分析问题→设计算法→编写程序→调试运行→检测结果。
2. 分析问题,设计混合程序结构解决问题
程序的编写就是用程序语言把算法程序化,程序包含算法,算法就是程序的灵魂。一个需要实现特定功能的程序,实现它的算法可以有很多种,所以算法的优劣决定着程序的好坏。一个算法的质量优劣将影响到算法乃至程序的效率。
如某市出租车收费标准如下:
(1)3公里内(含3公里),收费8元;
(2)超过3公里的车程按1.8元/公里收费;
(3)燃油附加费2元。
其算法流程图如下:
若车程为2公里,收费10元;若车程为5公里,收费13.6元。
【易错剖析】
某市移动电话市内收费标准如下:
(1)通话时间不超过3分钟(含3分钟),收取通话费0.5元;
(2)通话时间超过3分钟,则超过部分以每分钟0.1元收取通话费。
根据以上标准,输入通话时间,下列选项 所示的算法结构设计能正确计算出通话费。
A. B.
C. D.
【剖析】本题考查学生运用算法解决问题的综合能力。首先从题设自然语言描述可判断该算法的结构为分支结构,其次还要熟悉流程的各种图标表述的含义(如下表)。最后根据题设将各条件和输入、输出填入流程图,可知A选项所示的算法结构设计能正确计算出通话费。
【答案】A
【课后集训】
1. 某程序片段如下图所示,其结果为 。
A. 9
B. 5
C. 0
D. 4
答案:D
2. 判断一个数是奇数还是偶数的算法描述如下:
(1)输入数据x;
(2)如果x除以2的余数为1,则x为奇数;
(3)若果x除以2的余数为0,则x为偶数。
根据以上描述,在判断数是奇数还是偶数的流程图中,①的位置应填入 。
A. x除以2的余数等于0
B. x除以2的余数不等于0
C. x除以2的余数等于1
D. x除以2的余数等于2
答案:A
3. 某市出租车的收费标准如下:
(1)3公里内(含3公里),收费8元;
(2)超过3公里的车程按1.8元/公里收费;
(3)燃油附加费2元。
根据以上标准,在下图所示计算车费的流程图中,红框位置的内容是 。
A.
B.
C.
D.
答案:B
4. 热水壶的保温工作模式的部分算法流程如下图所示,以下描述正确的是 。
A. 该模式不检测水温
B. 该模式下,水温低于60 ℃开始加热
C. 该模式保持水温在60 ℃以下
D. 该模式下,水温高于60 ℃开始加热
答案:B
5. 某市出租车收费标准如下:
(1)3公里内(含3公里),收费8元;
(2)超过3公里的车程按1.8元/公里收费;
(3)燃油附加费2元。
根据以上标准,输入出租车行驶的公里数,下图所示计算车费的流程图中①位置应填入 。
A. y=8+2
B. y=8+(x-3)*1.8
C. y=(x-3)*1.8
D. y=(x-3)*1.8+2
答案:A
6. 在下图所示流程图中,若输入的A为-1,则输出的结果是 。
A. A2
B. -1
C. 0
D. 2
答案:D
7. 在下图所示流程图中,当输入x的值为-1时,结果为 。
A. 0
B. 2
C. -1
D. 1
答案:D
8. 在下图所示流程图中,当输入x的值为-1时,结果为 。
A. 0
B. -5
C. 2
D. 6
答案:C
9. 执行如下图所示的流程图,如果输入n的值为10,则输出s的值为 。
A. 1×2×3×4×5×6×7×8×9×10
B. 1+2+3+4+5+6+7+8
C. 1+2+3+4+5+6+7+8+9+10
D. 1+2+3+4+5+6+7+8+9
答案:C
10. 下图所示流程图运行的结果是 。
A. 0
B. -2
C. -1
D. 1
答案:D
11. 某算法的部分流程如下图所示,执行这部分流程后,“x=x-2”被执行的次数为 次。
A. 3
B. 2
C. 0
D. 1
答案:B
12. 某高速公路雷达测速拍照系统的算法描述如下图所示,可推测该算法要解决的问题是 。
A. 雷达测速,并对车速低于
120码的车辆拍照
B. 雷达测速,并对车速超过
120码的车辆拍照
C. 雷达测速
D. 雷达监测通过的车辆数
答案:B
13. 根据下图所示多边形对角线的算法流程图,可判断出6边形有 条对角线。
A. 7
B. 5
C. 6
D. 9
答案:D
14. 执行如下图所示流程图,要使程序的输出结果为-2,则输入值为 。
A. 0或1
B. 2或3
C. 4或5
D. 6或7
答案:A
答案:B
15. 某程序中角色控制程序如下图所示,角色每次移动100步,重复走3次。程序执行结束后该角色共走了
步。
A. 100
B. 300
C. 30
D. 0
返回目录