内容正文:
第二节 用算法解决问题的过程
考点 用算法解决问题的过程
达标 1. C揖解析铱该步骤中出现了循环袁应用循环结构遥
达标 2. B揖解析铱解决问题有多种算法遥
达标 3. 渊1冤6 渊2冤淤m<n? 于r=m%n 盂r=0?揖解析铱
渊1冤24 和 18的最大公约数为 6遥 渊2冤淤处为判断 m尧n的大小关
系曰于处用于得到 m 除以 n 的余数 r曰盂处用于判断余数 r是否
为 0袁r=0时袁退出循环袁输出 n遥
第三章 算法的程序实现
第一节 Python语言基础
考点一 编程环境
考点二 数据类型与表达式
考点三 变量和赋值语句
达标 1. B揖解析铱先算 10**2袁本题答案为 12遥
达标 2. D揖解析铱A的结果为 4袁B的结果为 7.0袁C 的结果为
2.33袁D的结果为 2遥
第二节 基本数据结构
考点一 字符串和列表
考点二 索引
考点三 字典
达标 1. B揖解析铱s咱1暂的值为野0冶曰s咱0颐2暂的值为野NO冶曰s咱颐颐暂
的值为字符串的所有字符遥
达标 2. A揖解析铱程序运算结束后 a=咱1,2,3,4,咱5,6暂暂袁故 a咱-2暂
的值为 4遥
达标 3. D揖解析铱字典中通过键来查找对应的值遥
达标 4. D揖解析铱A尧B尧C均为 False袁D为 True遥
达标 5. D揖解析铱该程序运行后 print语句输出键的值袁且不
换行遥
第三节 顺序结构与分支结构
考点一 顺序结构
考点二 分支结构
达标 1. A揖解析铱该算法结构是顺序结构遥
达标 2. C揖解析铱当 x逸0时袁y=x袁反之 y=-x遥
达标 3. A揖解析铱B 项袁当 t臆50 时袁野小雨冶袁不符合题意曰C
项袁当 t臆25 或 t>50 时袁野雨停冶袁不符合题意曰D 项袁当 t>50 时袁
不会执行野雨停冶袁不符合题意遥
第四节 循环结构
考点 循环结构
达标 1. B揖解析铱range(0,2*n,2)表示从索引 0 开始袁每 2 个
数据一组袁共循环 n次遥 m1和 m2表示最大值和次大值遥 若满足
条件 a咱i暂>a咱i垣1暂袁表示在一组的两个数据中找出一个较大者遥有
3种可能性院t2比 m1大袁意味着 t1和 t2是较大者和次大者曰t1比
m1大但 t2比 m2小袁次大者为 m1袁最大者为 t1曰t1比 m1小但 t2
比 m2大袁仅修改次大者遥
达标 2. A揖解析铱遍历数组 a 中数据袁将大于 90 计入 A袁大
于 80但小于等于 90计入 B袁其他的计入 C遥
达标 3. B揖解析铱从索引号为 2 的数组元素开始袁统计当前
元素是否是前面 2个元素之和的个数遥
达标 4. D揖解析铱当 n=1时袁条件判断框值为 False袁直接输出
野验证成功冶袁A错误曰n不管是奇数还是偶数都能验证成功袁B 错
误曰n=2时袁n屹1条件判断两次袁第一次 n=2袁第二次 n=1袁C错误遥
第五节 函数与模块
考点一 函数
达标 1. 淤range(len(s)) 于t越sn咱s咱i暂暂 盂ans垣越t*k**(len
(s)原i原1)揖解析铱淤从表达式 s咱i暂来看袁需遍历字符串 s 的各个位
置遥于不是数字就是 A~F的字母袁需在字典 sn中取出相应的值遥
采用按权展开相加的方法袁将各个位的数字与位权的乘积进行
累加遥
达标 2. 渊1冤313尧353尧373尧383渊任答 1 个冤 渊2冤淤k原1渊或
其他等价答案冤 于len(k)原1原i渊或其他等价答案冤 盂return
flag渊或其他等价答案冤 榆ishw(str(i))渊或其他等价答案冤揖解析铱
渊1冤区间范围咱300,400暂的回文数有 303袁313袁323袁333袁343袁353袁
363袁373袁383袁393袁找出其中的素数遥 渊2冤自定义函数 isprime 判
断 k 是否为质数袁质数的条件是不能被除了 1 和他本身外的数
整除袁因此 i的范围是 2~(k原1)遥 自定义函数 ishw 判断字符串 k
是否是回文袁0 和 len(k)原1袁1 和 len(k)原2 是对称位置袁因此索引
位置 i和其对称位置之和为 len(k)原1袁则索引位置 i 的对称位置
可以表达为 len(k)原1原i袁如果不相等袁则 flag的值为 False袁盂处将
返回函数的值遥 榆处将判断数 i是否为回文遥
考点二 Python的内置模块
考点三 Python模块的导入
达标 1. B揖解析铱黑色的转换为野*冶袁白色写入空白遥
达标 2. B揖解析铱语句 s越s咱:k暂垣s咱k垣1:暂的功能是去除该字符
串索引 k位置上字符遥
第六节 简单算法及其程序实现
考点一 解析算法及其程序实现
考点二 枚举算法及其程序实现
达标 1. 渊1冤23500 渊2冤淤int(s咱i+1暂)*500 于p=i 盂q+1
揖解析铱渊1冤该订单一天住宿的总金额=500伊渊2+8冤+300伊渊16+19冤+
200伊渊14+26冤=23500元遥 渊2冤淤处根据 elif下面的语句可知袁变量
income用于统计住宿金额遥 s咱i暂的值为野A冶袁代表 A型房间袁A型
房间只能订 1耀9个袁则 s咱i+1暂表示 A型房间的数量袁A型房间的
住宿团队价为 500元/晚袁故填入代码为 int(s咱i+1暂)*500遥 于处自
定义函数 fi(s,b,e)中袁s表示订单码字符串袁b表示要遍历字符串 s
的开头索引袁e 表示要遍历字符串 s 的结尾索引袁 根据代码
野total=fi(s,p+1,e-1)冶可知袁for语句计算的是第一个团队的住宿金
额袁则 p+1表示要遍历字符串 s的开头索引袁代码野if s咱i暂=="-"
and not flag:冶表示当前遍历的 i 为字符串 s 中第一个野-冶的索
引袁故填入代码为 p=i遥 盂处代码累加第二个团队的住宿金额袁画
线处代码表示要遍历字符串 s的开头索引袁即第二个野-冶后面字
符的索引袁第二个野-冶的索引通过代码野elif s咱i暂=="-":q=i冶存储
在变量 q中袁故填入代码为 q+1遥
达标 2. 渊1冤5寅16寅8寅4寅2 渊2冤淤n%2==0 于n=n*3+1
渊3冤A揖解析铱渊1冤根据算法特点院偶数袁下一步将其除以 2曰奇数袁
下一步将其乘以 3再加 1遥 初始时袁n=10袁10是偶数袁得到 n=10衣
2=5曰5 是奇数袁得到 n=5伊3+1=16曰16 是偶数袁得到 n=16衣2=8曰8
是偶数袁得到 n=8衣2=4曰4是偶数袁得到 n=4衣2=2曰2 是偶数袁得到
n=2衣2=1遥 渊2冤淤处根据代码野n=n//2冶可知袁该处判断 n是否为偶
数遥 于处根据 if语句可知袁该处 n为奇数袁故执行乘以 3再加 1
的操作遥 渊3冤在该程序段中袁根据输入的整数 n袁通过一系列的逻
辑判断和数学运算袁最终得到结果 1袁符合解析算法的特点遥
课堂精讲参考答案与解析
65
课堂精讲 学考一号 高中学业水平复习方略 信息技术
考点一 顺序结构
顺序结构渊如图所示冤院指的是算法中各个
步骤按照先后顺序依次执行的结构遥
渊1冤每个步骤按照算法中出现的顺序依次
执行遥
渊2冤每个步骤一定被执行一次袁而且只执行
一次遥
考点二 分支结构
先进行条件判断袁再根据判断结果分别执
行不同处理的控制结构就称为分支结构渊又称
选择结构冤遥
当<条件>为 True才执行对应分支语句块袁
elif和 else并非必须袁且当前面有条件渊if冤满足
时袁后面的判断渊elif冤会直接跳过袁不执行遥
1达标 已知长方形的长和宽袁求长方形
的面积袁部分流程图如图所示袁其算法结构是
渊 冤
A. 顺序结构 B. 选择结构
C. 框架结构 D. 循环结构
2达标 下图为求实数 x 绝对值问题的
算法流程图袁在淤处应该填入渊 冤
A. x=0 B. x=-y
C. y=x D. y=0
3达标 人们可通过报纸尧电视尧手机APP
等方式获取天气预报信息遥 气象中心接收气象
卫星和遍布全国的观测站发送的原始数据袁对
常规天气尧灾害性天气等进行预测遥某天气预报
APP以可视化的方式呈现天气状况袁并提示野您
所在街道 25分钟后小雨袁50分钟后雨停冶等信
息遥 用 Python算法控制结构描述野您所在街道
25分钟后小雨袁50分钟后雨停冶袁设 t为距离天
气预报发布时间的间隔渊单位院分钟冤袁下列选项
正确的是渊 冤
构·网络体系
第三节 顺序结构与分支结构
学·知识清单
顺序结构与分支结构
分支结构 if-elif语句
if语句
顺序结构
BMI=体重/身高 2
输出 BMI值
输入身高尧体重
if <条件 1>:
<语句块 1>
elif <条件 2>:
<语句块 2>
else:
<语句块 3>
条件
语句块 2语句块 1
Y N
输出面积 s
输入长宽 a,b
s=a*b
N
开始
结束
y=-x
输入实数 x
输出 y
x逸0?
淤
Y
18
考点 循环结构
1. for 循环称之为野取值循环冶袁其格式为
for <循环变量> in <序列>:遥 遍历序列中的所
有元素袁 循环次数取决于 in 后包含的值的个
数遥 序列可以是字符串尧列表和字典袁也可以是
range()函数产生的序列遥
2. range函数的功能是产生一个等差数列袁
格式为 range(start,stop,step)遥
3. while循环又叫条件循环袁直到条件不满
足时退出循环遥
4. 循环结构中途可以结束当次循环或结
束循环遥 break语句为结束并退出当前层循环袁
continue 语句为结束当前次循环袁进入下一次
循环遥
5. 若循环体中没有 break语句袁 当循环结
束后袁可以执行 else部分的语句遥
6. 循环语句 for i in range(0,n):和 i越0;while
i<n:i垣越1的区别是前者 i在序列咱0,n原1暂依次取
出各个值袁循环结束后袁i 的值为 n原1曰后者是 i
的初值为 0袁当条件 i<n不成立时退出循环袁循
环结束后袁i的值为 n遥
1达标 列表 a有 2伊n个元素袁各元素为
互不相等的正整数渊n逸1冤袁要在其中找到最大
值和次大值袁并分别存储到变量 m1 和 m2 中遥
实现该功能的 Python程序段如下院
m1越0;m2越0
for i in range渊0,2*n,2冤:
if a咱i暂>a咱i垣1暂:
t1越a咱i暂;t2越a咱i垣1暂
else:
t1越a咱i垣1暂;t2越a咱i暂
if 渊1冤 :
m1越t1;m2越t2
elif 渊2冤 :
构·网络体系
第四节 循环结构
学·知识清单
A. if t>50:
print("雨停")
elif t>25:
print("小雨")
B. if t>50:
print("雨停")
else:
print("小雨")
C. if t>25 and t<=50:
print("小雨")
else:
print("雨停")
D. if t>25:
print("小雨")
elif t>50:
print("雨停")
第三章 算法的程序实现
循环结构
while循环
for循环
19
课堂精讲 学考一号 高中学业水平复习方略 信息技术
构·网络体系
第五节 函数与模块
Image模块
random模块
math模块
模块
函数
函数与模块
函数的构造
m2越m1;m1越t1
elif 渊3冤 :
m2越t1
上述程序段中方框处可选代码为院淤t1>m1曰
于t1>m2曰盂t2>m1袁则渊1冤渊2冤渊3冤处代码依次为
渊 冤
A. 淤于盂 B. 盂淤于
C. 于盂淤 D. 盂于淤
2达标 有如下 Python程序段院
a越咱100,71,74,95,68,78,99,99,82,100暂
b越{"A":0,"B":0,"C":0}
for i in a:
if i>90:
b咱"A"暂垣越1
elif i>80:
b咱"B"暂垣越1
else:
b咱"C"暂垣越1
运行该程序后袁b咱"B"暂的值是渊 冤
A. 1 B. 6
C. 3 D. 5
3达标 有如下 Python程序段院
list越咱2,1,3,4,5,7,12,14,26,37,63暂
c越0
for i in range(2,11,2):
if list咱i原2暂垣list咱i原1暂越越list咱i暂:
c垣越1
print(c)
该程序段运行结果为渊 冤
A. 2 B. 4
C. 6 D. 8
4达标 某算法的部分流程图如图所示袁
以下说法正确的是渊 冤
A. 若输入 n的值为 1袁则无法输出野验证成
功冶的结果
B. 该算法只有在输入 n的值是偶数时袁才
能执行成功
C. 若输入 n 的值为 2袁则野n屹1冶的判断次
数为 1次
D. 若输入 n的值为 5袁则野n是偶数?冶的判
断次数为 5次
N
Y
Y
n饮n伊3+1n饮n//2
输入 n
输出野验证成功冶
n是偶数?
n屹1?
N
20