内容正文:
信息技术必修1
二、算法与程序实现
考点解析
解决问题的一般过程和
解决问题的一般过程
B
用计算机解决问题
用计算机解决问题的过程
算法的概念
算
算法的概念及描述
描述算法
学
算法的特征
与
程
数据类型
序
程序设计基本知识
常量、变量及表达式
实
现
语句与程序结构
基于解析算法的问题解决
B
常见算法的程序实现
基于枚举算法的问题解决
B
算法与程序实现的综合应用
用计算机程序解决问题的过程:提出问题一
是编程的基础,也是编程的核心。
分析问题一设计算法一编程调试一解决问题。
算法的三种描述方法:自然语言、流程图、伪
分析问题:用计算机编程解决问题时,需要对
代码。
问题进行分析,明确问题的目标和条件等,需要把
算法的特征:有输入、有输出、有穷性、可行
问题进行抽象,通过建模的方式,界定和描述
性、确定性。
问题。
有输入:一个算法有0个或多个输入。
设计算法:根据分析,找出解决问题的方法和
有输出:一个算法至少有一个输出。
步骤(核心)。
有穷性:一个算法必须在有限步之内结束。
编写调试:选择一种程序设计语言来编写程
可行性:算法中的每一步操作都是可以执
序,实现算法。检查程序的运行可行性。
行的。
算法:为解决一类特定的问题而采取的确定
确定性:一个算法的每一步必须有确定的
的有限的步骤。(解决问题的步骤和方法)算法含义。
9
考点诠解引信息技术(新课标)
计算机语言:
数据类型
低级语言
高级语言
Python语言的部分常用数据类型
机器语言、
Visual Basic(VB)Pascal
数据
类型
类型说明及实例
汇编语言
C、C++Java
类型
标识符
计算机具有运算速度快、计算精确度高、逻辑
整型
int
如:1、-1589456等
运算能力强、存储容量大和自动化程度高等特点。
可以使用浮点数表示小数,如:
流程图常用符号及其功能
浮点型
float
3.1415,0.0088,2.318E+6(表
示2.318*10)
流程图符号
名称
功能
通常是用单引号(‘·)或双引
开始/结束框
表示算法的开始或结束
字符串型
str
号(“”)括起来的一串字符,
如:‘中国'、“China'
输入/输出框
表示输入或输出数据
布尔类型通常用于逻辑判断,
框中指出要处理的内
布尔型
bool
只有两个值:Tue和False,分别
处理框
容,此框有1个入口和1
代表真和假
个出口
列表是用来存放一组数据的序
用于表示条件判断及产生
列。列表中存放的元素可以是
分支的情况,判断框有4
列表
list
各种类型的数据,它们被放置
判断框
个顶点,通常上面的顶点
在一对中括号“[]”中,以逗号
表示入口,视需要用另外
分隔,如:[1,2,3,‘A’,5]
3个顶点来表示出口。
Python语言中部分数据类型转换函数
流程线
用于控制流程方向
用于连接因页面写不下
数据类型转换函数
功能说明
连接点
而断开的流程线
float(x)
将x转换为一个浮点型数据
算法有顺序结构、选择结构和循环结构三种
int(x)
将x转换为一个整型数据
基本控制结构。
str(x)
将x转换为一个字符串型数据
常量、变量及表达式
顺序结构
(1)常量指程序运行过程中,其值不能改变
Step2
的量,例如1024、“red”。
(2)变量指程序运行过程中,其值可以改变
条件满?
分支钻
的量。变量是内存中存放数据的存储单元,用变
证择结构)
量名来表示。
变量命名需要遵循以下规则:
a.由字母、汉字、数字、下划线组成,但不能以
循环结构
低环条料流
数字开头。
b.变量名区分大小写。
10
信息技术必修1
c.不能用保留字。另外,变量名最好能“见
关系运算符
描述
用法
举例
名知意”。如:常用的系统关键字有for、in、if
>
大于
a>b
2>3的结果为False
continue、break、else、and、not和or等。
小于
a<b
2<3的结果为Tue
(3)赋值语句是最基本的语句,其格式为:变
>=
大于或等于a>=b
2>=3的结果为False
量名=表达式;如:colors=[“red”,“yellow”,
<=
小于或等于
a<=b
2<=3的结果为True
“green"]
=
不等于
=h
2!=3的结果为Tue
注意的是,Python语言中的变量必须在使用
逻辑运算符
前被赋值,不能使用未被赋值的变量。在使用过
逻辑运算符可以对关系式或布尔值进行逻辑
程中,变量还能够被重新赋值,且新值替代旧值。
运算,运算结果仍为布尔值True或False。
Python语言中的变量可以被赋值为列表类型
Python语言中常见的逻辑运算符
的值,如colors=[“red”,“yellow”,“green”]。若
逻辑运算符
描述
用法
举例
要访问列表中某个元素的值,可用变量名加索引
not
非
not a
not(2=3)的结果为Tnue
值的方式。例如,列表变量colors中的3个元
只有当两个操作数都为
素为:
Tue时,其结果才为
and
与
a and b
colors[0]
colors[1]
colors[2]
Tnue,如:(2<3)and(2>
“red"
“yellow”
“green"
1)的结果为Tnue
colors[n]中的n表示列表的索引值(n=0,
只要有一个操作数作为
Tnue,其结果就为True
1,2),其中,colors[0]的值为“red”,colors[1]的
或
a or b
如:(2<3)or(1>2)的
值为“yellow”,colors[2]的值为“green'”。
结果为True
算术运算符
算术运算符主要进行算术运算,运算的结果
运算符的优先级
a.当表达式中出现“()”时,它的运算级别最
为整型或浮点型。常见的算术运算符有加(+)、
高,应先运算“()”内的表达式
减(-)、乘(*)、除(/)、取模(%)既为求余数、
b.运算符的优先级为:算术运算符>关系运
幂(**)和整除(1/)等。例如,6%4为2,2**
算符>逻辑运算符。
3的结果为8,9//2的结果为4。a+=2的意思
c.在同类运算符中也要注意不同的优先级。
是求a=a+2。
例如,逻辑运算符not、and、or的优先级为:not>
关系运算符
and>or。
关系运算符主要用于比较两个值的大小,运
语句与程序结构
算的结果为布尔值True或False。
(1)顺序结构:指程序的执行按语句的排列
Python语言中常见的关系运算符
顺序从上到下依次执行,直至结束。
关系运算符
描述
用法
举例
python语言中函数input():实现数据输入,
等于
a==b2==3的结果为False
函数print():实现数据输出。
11
考点诠解引信息技术(新课标)
(2)选择结构:
语句类型
格式
描述
Python语言单分支、双分支和多分支结构
for语句每次从序列中
分支类型
基本格式
对应流程图或代码
取出一个元素赋值给循
f表达式:
单分支
环变量(循环变量初值
语句块
for循环变量in
即为序列中的第一个元
for
x=int(input(“请输入一个
序列:
素值),当依次访问完序
语句
f表达式:
正整数:”)
语句块
列中所有元素后,循环
语句块1
ifx%2==0:
结束。需要注意的是,
双分支
else:
print(x,“是偶数。”)
for..in后面的冒号不
语句块2
else:
能省略。
print(x,“是奇数。”)
例如,“倒计时15s”功能实现的程序示例
f表达式:
n=int(input(“请输入乘坐
如下:
语句块1
的站点数:”))
import turtle
import turtle
elif表达式2:
if n<=5:
import time
import time
text turtle.Turtle()
text turtle.Turtle()
语句块2
print(“票价2元”)
text.hideturtle()
text.hideturtle()
i=15
for i in range(15.0.-1):
elif n<=10:
whilei>=1:
iexL.write(i,fomt=(“黑
多分支
print(“票价3元”)
体”,14.“noma”)
text.write(i,font=(“黑
elif表达式n:
elif n<=16:
体”,14.“normal")
time.sleep(1)
time.sleep(1)
语句块n
print(“票价4元”)
text.elear()
text.clear()
i=i-1
else:
else:
语句块n+1
print(“票价5元”)
附加:函数range,格式:range(起始值,终值,
步长),注意的是,生成的这个整数序列不包括终
(3)循环结构
值,并且起始值和步长(序列中相邻两个元素之
a.while语句和for语句
间的差)可以缺省,缺省时分别为0和1。
语句类型
格式
描述
函数ange()返回的等差整数序列举例
while语句中的表达式
函数range()举例
功能说明
是循环控制条件,其值
range(1,5,2)
生成序列为1,3
般为布尔值(True或
range(1,5)
生成序列为1,2,3,4
False),当表达式的值为
range(5)
生成序列为0.1,2,3,4
While
while表达式:
Tnue时,执行循环体内
语句
语句块
的语句,否则就退出循
range(5,1,-1)
生成序列为5.4,3,2
环,执行下一条语句。
b.循环嵌套:一个循环结构内可以包含另一
需要注意的是,while表
个循环,这样的结构称为循环嵌套,也称多重循
达式后面的冒号不能
环。常用的循环嵌套是二重循环,外层循环称为
省略
外循环,内层循环称为内循环。内循环是外循环
12
信息技术必修1
的循环体。
#通过end=“”设置函数print()不输出
循环嵌套的执行过程:首先执行外层循环,外
换行符
循环每执行次,内循环则需执行一个完整的循环。
print(i,“*”,j,“=”,i*j,“\t”,end=
如九九乘法表:
”)
#外循环
#设置换行操作(函数print()不输出任
For i in range(1,10):
何字符,只进行换行)
#内循环
print()
for j in range(1,i+1)
c.break语句和continue语句
语句描述
程序示例
运行结果
num =0
for i in range(1,5):
进入第1次循环,i=1
break语句用于终止某个
print(“进人第”,i,“次循环,i=”,i)
num=I
循环,使程序跳到循环体
ifi==3:
进入第2次循环,i=2
以外的第一个可执行语句
break
num =2
num num +I
进入第3次循环,i=3
print(“num=”,num)
0um=0
进入第1次循环,i=1
continue语句用于终止本for i in range(1,5):
num=1
次循环进人下一次循环,
pint(“进人第”,i,“次循环,i=”,i)
进入第2次循环,i=2
即跳过循环体内还未执行
if i==3:
num =2
的语句,进人下一次循环
continue
进人第3次循环,i=3
的判定。
numnum 1
进人第4次循环,i=4
print(“um=”,num)
Num =3
内置模块andom可以生成一个指定范围内
与结果之间关系的表达式,并计算表达式来实现
的随机数。参考语句为:
问题的求解。
m=random.randint(1,100)#生成一个指
枚举法:是依据问题的已知条件,确定答案的
定范围为[1,100]的随机整数。
大致范围,在此范围内举例它所有可能情况的
解析算法:指通过找出解决问题的前提条件:方法。
13
考点诠解
信息技术(新课标)
典例精解
1.下列关于用计算机编程解决问题的叙述,正确
法”计算正整数m和n的最大公约数的方法分步
的是
(
骤具体描述就是算法,故本题选B选项。
A.生活中的所有问题都可以采用计算机编
3.流程图描述算法形象、直观、容易理解。在
程的方法解决
使用其描述算法时,表示变量的计算和赋值的符
B.计算机程序运行时间越短速度就越快,说
号框是
明算法越好
C.计算机技术发展迅速,在部分领域能够替
【答案】B
代人的工作
【分析】本题主要考查算法的描述。算法描
D.在问题求解过程中,程序一旦报错就要从
述中可以使用流程图,其中菱形表示条件判断及
头开始编写
产生分支的情况,平行四边形表示数据的输入或
【答案】C
者输出,圆角矩形表示算法的开始或结束。故本
【分析】本题主要考查用计算机解决问题。A
题选B选项。
选项错误,计算机编程虽然强大,但并不能解决所
4.在Python中,以下属于整型常量的是
有问题。B选项错误,程序的长度并不一定代表
(
算法的好坏,算法的效率和正确性更为关键。C
A.20.24
B.贰仟零贰拾肆
选项正确,在某些领域,计算机可以执行重复性
C.“2024”
D.2024
高。逻辑清晰的任务,取代人的工作,但并非所有
【答案】D
领域都适用。D选项错误,在问题求解的过程中,
【分析】本题主要考查数据类型。A属于浮
程序一旦报错不需要从头开始编写,可从报错地
点型数据,B不是Python中的数据类型,C属于字
方修改编写。故本题选C选项。
符串型。故本题选D选项。
2.下列关于算法与算法特征的说法,不正确
5.在Python中,表达式x*y==1000*a+
的是
100*b+10c属于
(
A.算法是解决问题的步骤和方法
A.算术表达式
B.关系表达式
B.算法在执行时,必须输入至少一个数据
C.逻辑表达式
D.日期表达式
C.算法中每一步运算都必须明确,无二义性
【答案】B
D.用“辗转相除法”计算正整数m和n的最
【分析】本题主要考查表达式。其中==表
大公约数的方法分步骤具体描述就是算法
示的是等于,属于关系运算符,关系运算符主要用
【答案】B
于比较两个值的大小,运算的结果为Tue或者
【分析】本题主要考查算法与算法特征。A
False。故本题选B。
算法是解决问题的步骤和方法:B算法在执行时,
6.range函数用于生成整数列表,range(6)生
可以没有输入,但必须有输出:C算法具有确定
成的列表是
性,每一步都必须明确,没有歧义;D用“辗转相除
A.[1,2,3,4,5,6]
B.[1,2,3,4,5]
14
信息技术必修1
C.[0,1,2,3,4,5,6]D.[0,1.2,3,4,5]
【分析】本题主要考察程序设计中的循环语
【答案】D
句以及算数运算符与表达式。n=0,m=123>0,
【分析】本题主要考察函数。函数range()返
满足循环条件,n=0+123%10=0+3=3,m=
回的等差整数序列,格式:range(起始值,终值,步
123/10=12:n=3,m=12>0,满足循环条件,n
长),注意的是,生成的这个整数序列不包括终
=3+12%10=3+2=5,m=12//10=1:n=5,m
值,并且起始值和步长(序列中相邻两个元素之
=1>0,满足循环条件,n=5+1%10=6,m=1//
间的差)可以缺省,缺省时分别为0和1。故本题
10=0:m=0时不满足循环条件,循环结束,最后
选D。
n的值为6。
7.运行下列Python程序后输出的结果是
8.查找10000以内所有能被12整除并且末
(
尾是6的自然数。下列算法最合适的是()
m=123
A.查找法
B.递归法
n=0
C.枚举法
D.解析法
While m >0:
【答案】C
n=n+m%10
【分析】本题考察的是算法与程序实现的综
m=m//10
合应用。枚举法是依据问题的已知条件,确定答
Print(n)
案的大致范围,在此范围内举例它所有可能情况
A.5
B.6
C.7
D.8
的方法。故本题选C
【答案】B
同步训练
第一部分基础题
中的
一、单项选择题
A.分析问题
B.设计算法
1.某同学想设计一个能够给学校自动排课的软
C.编写程序
D.运行程序验证结果
件,他制定的如下工作过程中,最恰当的是
3.在日常生活中,我们常常会碰到许多需要解决
(
的问题,以下描述中最适合用计算机编程来处
A.设计算法、分析问题、编写程序、调试运行
理的是
B.编写程序、调试运行、分析问题、设计算法
A.确定去游乐场的路线
C.分析问题、编写程序、设计算法、调试运行
B.将两个短视频进行剪接
D.分析问题、设计算法、编写程序、调试运行
C.统计100000以内的素数的个数
2.信息技术课上,同学们准备用编程解决“百钱
D.因特网上寻找下载热播歌曲
买百鸡”的问题,同学们先在纸上画出程序算
4.下列程序设计语言中不属于高级语言的是
法流程图。该步骤属于用计算机解决问题过程
15
考点诠解
信息技术(新课标)
A.c语言
B.python
12.计算机执行赋值语句a=a+5的过程是
C.机器语言
D.java
5.下列对算法特征的描述,不正确的是
①读取变量a的值
②将运算结果写人变量a
A.算法必须有输出
③将a的值加5
B.算法必须有输入
A.①②3
B.①③②
C.算法可以使用程序设计语言来实现
C.3①②
D.③②①
D.算法中每一步运算都必须明确,无二义性
13.在Python语言中,以下赋值语句正确的是
6.计算圆的周长的算法如下:①输入半径r:②求
(
周长c=2πr:③输出周长。其描述方式是
A.D=10+8
B.C+3=D+6
(
C.3y=x+2
D.E$=hello
A.流程图
B.自然语言
14.Python编程环境中,表达式10+3*4**2//
C.程序代码
D.项目式
(8%5)的值
7.下列问题不能用算法描述的是
A.22
B.24
C.26
D.28
A.求方程y=x+1的所有整数解
15.在Python中,表达式not(2*8!=15)的值为
B.求一元二次方程y=5x+1的两个实数解
(
C.已知圆柱的底面半径和高,求表面积和体积
A.10
B.11
C.True
D.False
D.计算某班语文平均分
16.在Python语言中,关于函数的调用,下列说法
8.下列选项中,不是算法描述方法的是
不正确的是
(
A.流程图
B.数据库
A.函数的调用格式为:函数名(参数)
C.伪代码
D.自然语言
B.输入函数input(),输出函数print()
9.“常用的软件客户端都需要账号登录,如果你
C.函数调用的本质是实际参数赋值给形式参
的用户名和密码输入正确则可登录,否则不能
数的过程
登录”。用流程图来描述这一问题时,判断“是
D.调用函数时,如果不需要参数,则函数名后
否输入正确”的流程图符号是
的括号可以省略
A.>B.☐C☑D.
17.下段python程序运行后,输出的结果为()
10.在python中,下列选项中a的数据类型为整型
a=10,b=5,c=30
的是
if a<b:
A.a=input())
B.a=6
x=a-b
C.a=“6”
D.a=6.0
else:
11.下列选项中,可以作为Python语言中合法变
x=a+b
量名的是
If e<x:
A.3m
B.if
C.a+b
D._3s
x=c
16
信息技术必修1
print(x)
A.将全班45名学生根据身高从低到高排队
A.10
B.5C.15
D.30
B.求符合要求的三位正整数的“水仙花数
18.在Python中,range()函数用于生成整数序列。
C.居民电费的阶梯电价计算方法
range(15,0,-3)生成的数据序列是(
D.找出一筐乒乓球质量不符合标准的球
A.15,12,9.6.3,0B.12,9.6,3
24.关于枚举法,下列说法不正确的是()
C.15,12,9.6,3
D.15,12.9,6,3,0,-3
A.枚举法的基本思想就是,根据问题的部分
19.运行下列Python程序后输出的结果是(
已知条件预估解的范围,并在此范围内对
sum =0
所有可能的情况进行逐一验证,直到找到
For i in range(1,8,2):
满足已知条件的解为止
sumsum +i
B.枚举的范围大小直接影响着枚举法的执行
print(sum,i)
效率
A.18
B.167
C.枚举法,也称蛮力法或暴力搜索法,理论上
C.168
D.117
利用这种方法可破解任何一种密码
20.利用Python求100以内所有能被2整除的正
D.枚举范围中的判定条件直接影响着枚举法
整数,代码如下:
的执行效率
i=0
25.判断一个正整数是否为素数,可以通过在一定
While i<=100:
范围内逐一查找此数是否能被1和本身以外
If
的其他因子整除来验证,如此采用的算法是
Print(i)
i=i+1
A.递归法
B.解析法
则下列程序第3行的横线应该填
C.二分法
D.枚举法
A.i//2=0
B.i=i%2
26.有如下程序,运行的结果为
C.i%2=0
D.i/2=1
i=0
21.在Python程序中要对中文进行分词处理,应
sum =0
该使用
(
while i<=1000:
A.math模块
B.random模块
sum sum +i
C.numpy模块
D.jieba模块
i=i+1
22.在Python程序中,以下导入第三方库的方式
print(sum)
错误的是
()
A.500
B.50050
A.import turtle
B.from turtle import
C.500500
D.1000
C.import turtle as t D.from turtle import
二、判断题
23.以下适合用解析法解决的问题是
1.程序设计语言的发展经历了汇编语言、机器语
17
考点诠解引信息技术(新课标)
言到高级语言的过程。
(
B=A
2.计算机程序就是指计算机如何解决问题或完成
Print(A)
一组可执行指令的过程,编写完成的程序,不需
Print(B))
要调试运行。
(
4.有如下问题,请填写①
②
3.一个算法有0个或多个输出。
(
公元6世纪,中国的《张丘建算经》有一道
4.一个算法是对某个问题而设计的求解的有限步
著名的百鸡问题:“今有鸡翁一值钱五,鸡母一
骤,可以用各种计算机程序设计语言写成多种
值钱三,鸡雏三值钱一,凡百钱买百鸡,问鸡翁
程序。
鸡母、鸡雏各几何?”
5.列表中的元素可以是不同数据类型。(
money =100
#一共100文钱
6.一旦将数据存入某变量,只要不把新的数据存
num =100
#一共100只鸡
入,变量的值就不会改变。
for x in range(①):#公鸡只数可能为1-20
7.枚举法的基本思想就是根据问题的部分已知条
for y in range(1,34):#母鸡只数可能为1
件预估解的范围,并在此范围内对所有可能的
-33
情况进行逐一验证,直到找到满足已知条件的
for z in range(1,l01):#小鸡只数可能为1
解为止。
(
-100
8.较简单的调试方法是通过函数print()直接输
MoneyI=②
出程序执行过程中的变量值。
(
nums =x +y+z
三、填空题
if moneyl money and nums =num:
1.要表示x在(-3,15]区间内,python表达式应
#检验条件:100文钱是否用完了,买的鸡数量
写成
是否有100只
2.某算法的部分流程图如图所示,执行这部分流
print(x,y,z)#输出公鸡、母鸡、小鸡的数量
程后,变量x,y的值分别是
input(“运行完毕,请按回车键退出.,.”)》
3-3344
5.阅读下列python程序,写出运行结
果
<10
n=15
s=0
for i in range(3,n):
if n%i==0:
3.下列程序的输出结果是
s=s+i
A=15
print(s,i)
B=25
6.阅读以下程序,写出程序运行结果。
A=B
def f(n):
18麟参考答案
信息技术
必修1数据与计算
XINXI JISHU
一、认识数据与大数据
二、判断题
6.×7.V8.×9.×
同步训练
三、填空题
第一部分基础题
10.输入码11.真伪
一、单项选择题
12.101112313.多样性
1.A2.A3.D4.D5.B6.B7.B8.C
14.5184*3456*24/(8*1024*1024)
9.C10.C11.C12.D13.D
二、算法与程序实现
二、判断题
同步训练
14.×15.V16.V17.×
三、填空题
第一部分基础题
18.时效
一、单项选择题
19.信息技术
1.D2.B3.C4.C5.B6.B7.A8.B
20.迅变性
9.A10.B11.D12.B13.A14.C15.D
21.20和1
16.D17.C18.C19.B20.C21.D
第二部分拓展题
22.D23.C24.D25.D26.C
一、单项选择题
二、判断题
1.A2.D3.B4.D5.B
1.×2.×3.×4.V5.V6.V7.V
67
考点诠解信息技术(新课标)
8.V
9.C10.C
三、填空题
二、判断题
1.-3<x<=15
11.V12.V13.×14.×15./16.×
2.21,10
17.V18.×19.×20.×
3.25,25
三、填空题
4.(1,21)x*5+y*3+7/3
21.智能化识别、定位、跟踪、监控和管理
5.8,14
22.数据备份
6.360
第二部分拓展题
第二部分拓展题
1.A2.D3.×
一、选择题
四、走进智能时代
1.A2.B3.D4.C5.C6.D7.D8.C
同步训练
9.D10.A
一、单项选择题
二、判断题
1.B2.A3.A4.B5.D6.A7.D8.B
1.V2.×3.×4.V5.V6./7.V
9.D10.D
三、填空题
二判断题
1.def
11.×12.V13.V14.×15.V
2.123456,123456.0
三、填空题
3.-5
16.动物神经网络
算法模型
4.20
17.信息处理
神经末梢
5.5.8
18.生物特征识别
三、数据处理与应用
19.编程
同步训练
20.人类利益原则人类利益责任原则责任
第一部分基础题
体系技术层面
应用层面责任和赔偿
一、选择题
1.D2.A3.C4.D5.A6.D7.B8.B
68