内容正文:
2023-2024学年教科版高一上学期选修一1.2 算法描述与设计
一、选择题
1.在Visual Basic中,表达式"20"+"08"的值是( )
A.28 B.False C.20+08 D.2008
2.二分查找算法利用的算法思想是( )
A.分治策略 B.穷举法 C.回溯法 D.递归法
3.以下结构不属于算法基本控制结构的是( )
A.顺序结构 B.分支结构 C.循环结构 D.树形结构
4.某算法的部分流程图如图所示。输入n的值为100执行这部分流程后,输出的值为( )
A.2,2,5,5 B.1,2,2,5,5 C.1,4,5,5 D.1,2,5,10
5.下列流程图用于描述判断一个数的奇偶性,其中虚线框中的图形应该是( )
A. B. C. D.
6.如下图所示,该流程图所示的算法已在计算1+2+3+4……的值,但有一处错误导致程序出现死循环,该处是( )
A.①处 B.②处
C.③处 D.④处
7.韦沐沐同学利用Python软件编制程序。初始时,他使用流程图描述算法,在设计输入、输出数据时使用的图例是( )
A. B. C. D.
8.根据算法的特征,下面描述正确的是:( )
A.一个算法有0个或多个输入
B.一个算法可以有0个输出
C.算法步骤可以无限
D.算法的每个步骤都具有确定的含义。
9.某算法的流程图如下图所示,该流程图的功能是( )
A.计算s=1+2+3+4+5的和 B.计算s=1*10+2*10+3*10+4*10+5*10的和
C.计算s=10000+2000+300+40+5的和 D.计算s=105的和
10.超市里的苹果4元/kg,水果店里的苹果5元/kg,每满5kg送1kg。你要买100元的苹果,去( )买更加划算。( )
A.超市 B.水果店 C.都一样 D.无法计算
11.用流程图表示条件“A>B”是否成立,要用到以下哪个图形? ( )
A.D B.B C.C D.A
12.根据胡卓同学绘制的男生身体质量指数对应等级的算法流程图回答问题:
该流程图算法的控制结构是( )。
A.顺序结构
B.选择结构(分支结构)
C.循环结构
D.多方向结构
13.利用计算机解决问题步骤有分析问题、设计算法、编写程序和调试运行,其中最为核心的步骤是( )
A.分析问题 B.设计算法
C.编写程序 D.调试运行
14.在流程图中表示算法中的条件判断时使用( )
A.菱形框 B.矩形框 C.圆形框 D.平行四边形框
15.以下流程图图例中,表示判断框的是( )
A. B. C. D.
二、填空题
16.描述算法的方法有3种,分别是 、 、 。
17.角谷猜想是指一个正整数x,如果x是奇数,则乘以3再加1;如果是偶数,则除以2。这样经过若干次运算后,总是可以得到自然数1的结果。小明根据角谷猜想进行了算法设计,并用如下流程图来描述算法。
请回答下列问题:
(1)解决此问题所使用的算法控制结构是 。
(2)根据本题算法的流程图所示,则流程图中①②处应填写的内容分别是:
① ②
(3)若输入x的值为6,则输出的运算次数n为 。(填数字)
18.算法是解决问题的方法和步骤,其描述的方法包括自然语言、伪代码和 。
19.为了更直观地描述流程,我们常常会用到流程图,流程图中一定会表现出 关系。(顺序;合作)
20.小明同学用计算机求解1+2+……+100的和,下图是他设计的算法,请问他使用了 描述方法。
第一步,令s=0
第二步,令i=1
第三步,求出s+i,仍用s表示。
第四步,判断i>100是否成立?若是,输出s;
若不是,将i的值增加1,仍用i表示返回第三步。
三、操作题
21.为了进一步提高交通管理水平,加大对超速违法行为的管控力度,保证高速公路行驶安全,打击违章超速等行为,高速公路上设置了多种测速方式,区间测速是常见的测速方式之一(如下图),某高速路段测速区间距离为4公里,该路段限速每小时80公里,车辆通过此路段的时间超过3分钟,则其平均时速就符合限速要求;车辆通过此路段的时间不足3分钟,就说明该车辆已经超速。
(三)选用Python语言,编写、调试运行模拟区间测速程序,验证、完善、优化算法
代码编写完成并在程序调试运行过程中,总会遇到各种各样的错误,有的错误是用户输入造成的,①关键字、函数名、变量名等拼写错误;②中英文输入、缩进格式、表达式书写以及缺少冒号等不符合Python的语法规范;还有一类错误是程序设计本身存在的逻辑错误,这类错误只有在运行时才能判断其算法是否正确和完整。根据要求,回答问题。
同学A的运行结果
表一:
s=int(input("请输入测速区间长度"))
t=int(input("请输入抓拍时间间隔"))
1imit=int(input("请输入限速"))
v=s*60/t
if v<=limit:
print("符含限远要求")else:
print("己超速")
File"<ipython-input-4-09d4250db4b6>",line 1
s=int(input(“请输入测速区间长度”))
SyntaxError: invalid character in identifier
同学B的运行结果
表二:
s=int(input("请输入测速区间长度"))
x=int(input("请输入抓拍时间间隔"))
1imit=int(input("请输入限速")
V=s*60/t
if v<=limit:
print("符合限速要求")else:
print("已超速")
请输入测速区间长度4
请输入抓拍时间间隔3
请输入限速80
Traceback (most recent call last):
<ipython-input–1-915d679200b8>in<module>line4
V=s*60/t
NameError: name 't' is not defined
(1)观察表一,分析同学A程序的错误并改正。
(2)观察表二,分析同学B程序的错误并改正。
(3)通过小组间的对比、分析,总结归纳得出,在利用计算机解决问题时,算法是不能被计算机直接执行的,需要将算法按照一定的规则编写成计算机能够识别和运行的程序,计算机程序设计语言是一组用来定义计算机程序的语法规则,统称编程语言。正确地使用编程语言,能让计算机准确地执行命令、解决问题。关于问题求解, 。(多选)
A.求解问题的算法往往不止一个
B.求解问题的算法描述中,可同时使用自然语言、流程图和伪代码
C.同一个算法可以编写不同的程序
D.程序是算法的具体实现
E.算法是计算机解决问题的核心
F.面对数据量很大时,人工处理效率较低,可以借助计算机解决问题更高效、更便捷
22.某超市打折促销,规定如下:
①购物未超过500元按原价支付;
②购物超过500元但未超过1000元,超过500元部分按9折优惠计价;
③购物超过1000元但未超过1500元,超过1000元部分按8折优惠计价;
④购物超过1500元但未超过3000元,超过1500元部分按7折优惠计价;
⑤购物超过3000元,超过3000元部分按6折优惠计价。
(1)根据以上规定,假定购物货款为x元、实付金额为y元,则可利用分段函数来解决这一问题,并得到解决这一问题的计算模型:
这个过程属于编写程序解决问题中的 。
(①调试运行程序②分析问题③设计算法④问题解决⑤编写程序)
解决此问题的算法如图所示:
(2)由图可知,解决此问题的算法是 (选填“穷举法”、“解析法”、“枚举法”、“分治法”);
(3)由图可知,解决此问题运用到的主要控制结构是 ;
(4)上图中,图形1、3表示算法 的功能;
(5)上图中,图形2表示算法 的功能;
(6)上图中,图形2中应填入的条件是 。
四、简答题
23.如图所示的流程图,请根据要求回答以下问题
(1)常见的算法描述主要有三种,本算法描述是什么?
(2)本算法的程序结构是什么?
(3)本算法程序的输出结果是多少?
(4)用计算机程序解决问题的步骤是:(请空白处补充完整)分析问题→设计算法→ →调试运行→检测结果。
(5)上述步骤哪-步骤是核心?
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.D
2.A
3.D
4.B
5.B
6.B
7.D
8.AD
9.C
10.A
11.D
12.B
13.B
14.A
15.B
16.自然语言 伪代码 流程图
17. 循环结构 x=1?或者x等于1? xx*3+1 8
18.流程图
19.顺序
20.自然语言
21. 用户输入错误造成的,将引号的中文输入改为英文输入 程序设计本身存在的逻辑错误。或者修改变量x,或者修改变量t ABCDEF
22. 分析问题 解析法 选择结构/分支结构 输入/输出 判断/条件判断 x<=500
23.(1)流程图
(2)循环结构和分支结构(选择结构)
(3)72
(4)编写程序
(5)设计算法
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$