内容正文:
第2章 算法与程序实现2024—2025学年高中信息技术人教/中图版(2019)必修1
一、选择题
1.在Python中,函数float("2.7")的返回值是( )
A.2.7 B.3 C.2.7' D.2.8
2.下列关于Flask框架的描述,正确的是( )
A.Flask框架可直接使用,无须导入
B.Flask框架中客户端提交数据只能用POST方式提交给服务器
C.表单是网站与访问者进行互动的界面,接收输入的数据,并将其发送给Web服务器
D.Flask框架中启用一个App的默认端口号不能更改
3.不能用算法描述“输出所有素数”,是因为不符合算法特征中的( )
A.有穷性 B.必须有输出 C.可行性 D.可以没有输入
4.运行下列 Python程序,结果正确的是( )
a=18
b=7
c=a%b
b=a%b
print(a,b)
A.18 5 B.5 18 C.18 4 D.4 18
5.下列Python 表达式的结果值最小的是( )
A.len("Python")*3 B.ord("A")-48 C.int("5"+"5")//3 D.abs(-14)+1**2
6.在Python语言中,运行以下程序段后,显示的结果是( )
A.12 B.0 C.14 D.2
7.已知a=6,b=7,下面表达式的值是True的是( )
A.b<=a
B.b!=a
C.a==b
D.a>b
8.下列选项中,全部属于Python语言中的关系运算符的是( )
A.>、<、<> B.==、+=、-= C.>、<、= D.>=、<=、!=
9.编程解决问题一般有四个步骤,其正确顺序是( )
① 抽象与建模;② 编写程序;③ 调试运行;④ 设计算法。
A.①④②③ B.④①②③ C.②③①④ D.②③④①
10.下列Python程序的功能是在有序链表中,插入一个新的数,使其仍然有序。
a=[[89,-1],[43, 4],[1,3],[21,5],[49,0],[27,1]]
x=int(input('请输入要插入的数: '))
head=2; p=head
while p!=-1 and a[p] [0]<x:
q=p
p=a[p][1]
if p==head:
a.append([x, head] )
head=len(a)-1
else:
# 输出链表a中所有数据,代码略
方框中的代码由以下三部分组成:①a.append([x,-1]) ②a[q] [1]=len(a)-1 ③a[len(a)-1][1]=p
下列选项中,代码顺序正确的是( )
A.③②① B.③①② C.①③② D.②①③
11.执行如下图Python程序段后,运行结果为( )
A.44 10 B.44 9 C.54 9 D.54 10
12.下列表达式的值为False的是( )
A.Abs(-12.3)>Int(12.3) B.Len("3+5")<=Val(Mid("123456",3,2)
C.75\Sqr(25)Mod5=0 D.Not(5>4Or12<5)
13.在Python中,下面代码的运行结果是( )
x=365
g=x%10 #%为求余的意思
s=x//10%10 # //为整除的意思
b=x//100
sum=g*100+s*10+b #sum英文是求和的意思
print(sum)
A.365 B.14 C.563 D.41
14.在VB中,若i=3,j=4,则执行下列语句的结果是 ( )
Print “i*j=”; i*j
A.i*j=12 B.3*4=12 C.i*j=i*j D.12= i*j
15.在Python语言中,三种运算符的优先级为( )
A.关系运算符>算术运算符>逻辑运算符
B.算术运算符>逻辑运算符>关系运算符
C.逻辑运算符>算术运算符>关系运算符
D.算术运算符>关系运算符>逻辑运算符
16.Python表达式23//3+12%5**2的运算结果是( )
A.9 B.16 C.19 D.7
17.在Python中,运行以下代码后,变量i的值是( )
i=20
while i>=5:
print(i)
i=i-5
A.10 B.-5 C.5 D.0
18.下列选项中,在Python中不合法的是( )
A.a += b B.a+b = 3 C.a,b = b,a D.a=b=c=3
19.解决某问题的算法流程图如图a所示,程序代码如图b所示,两者均不完整。
图a 图b
若输入s1和s2的值分别为“012”,“121210”,结合流程图和程序代码,则输出的num的值为( )
A.3 B.5 C.7 D.11
20.用流程图描述算法,下列说法错误的是( )
A.对于步骤较多的算法,只能用流程图才能描述 B.用流程图描述算法可以减少歧义的产生
C.较之自然语言,流程图习题更为简洁 D.流程图的绘制方法有统一标准
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.A
【详解】本题考查Python函数。float()函数用于将字符串转换为浮点数。在给定的例子中,参数是字符串"2.7",因此float("2.7")会将字符串"2.7"转换为对应的浮点数值,即2.7。故答案为:A。
2.C
【详解】本题考查Flask框架。Flask是第三方库,需要导入才能使用;Flask框架中,客户端可以用POST或GET等方式提交数据给服务器;Flask框架启用App的端口号可以更改。故选C。
3.A
【详解】本题考查算法特征。算法具有有穷性、确定性、可行性、有0个或多个输入、有一个或多个输出这五个特征。“输出所有素数”这个要求是无法在有限步骤内完成的,因为素数有无穷多个,不满足算法的有穷性特征。有穷性指的是一个算法必须在执行有限个步骤之后终止。而“输出所有素数”会导致算法无限进行下去,没有终止的时刻。所以不能用算法描述“输出所有素数”是因为不符合算法特征中的有穷性。故答案为:A。
4.C
【详解】本题主要考查Python程序的执行。a=18,b=7,c=a%b=4,b=a%b=4,输出a和b的值是18和4,故本题选C选项。
5.D
【详解】本题考查的是Python表达式。len("Python")*3=18,ord("A")-48=17,int("5"+"5")//3=18,abs(-14)+1**2=15,故本题应选D。
6.B
【详解】本题主要考查Python程序的执行。a=12,b=2,a=a+b=14,a%b=14%2=0,故本题选B选项。
7.B
【详解】本题主要考查Python表达式的运算。a=6,b=7,b<=a值为False,b!=a值为True,a==b值为False,a>b值为False,故本题选B选项。
8.A
【详解】本题主要考查Python运算符。比较运算符也叫关系运算符,用于比较两者的关系。比较的结果返回True或False。运算符描述:大于表示为“>”、大于等于表示为“>=”、小于表示为“<”、小于等于表示为“<=”、等于表示为“==”、不等于表示为“!=”,故本题选A选项。
9.A
【详解】本题考查程序设计步骤。第一步,抽象与建模;第二步,设计算法;第三步,编写程序;第四步,调试运行。故选项A正确。
10.C
【详解】本题考查Python程序。为了在有序链表中插入一个新的数,使其仍然有序,需要按照正确的顺序修改链表的指针。首先,应将新的节点添加到链表的末尾,即执行①a.append([x,-1]);然后,将新节点的指针指向插入位置的下一个节点,即执行③a[len(a)-1][1]=p;最后,将前一个节点的指针指向新节点,即执行②a[q][1]=len(a)-1。故答案为:C。
11.B
【详解】本题考查Python程序设计相关内容。分析程序,程序中含有for循环结构,其中range(2,10 )是生成整数函数,其中第一个值2为开始数,并在到达第二个数10之前停止。因此不包含第二个值。因此i的取值包括2,3,4,5,6,7,8,9,所以s=0+2+3+4+5+6+7+8+9=44,i=9,故本题答案是B选项。
12.D
【详解】本题主要考查表达式的运算。Abs是求绝对值函数,Int(x)是返回不大于x的最大整数,故表达式Abs(-12.3)>Int(12.3)值为True,Len函数返回字符串的长度,Len("3+5")=3,Val(Mid("123456",3,2)=34,故表达式Len("3+5")<=Val(Mid("123456",3,2)值为True,75\Sqr(25)Mod5=75 \5 Mod 5=15 Mod 5=0,故表达式75\Sqr(25)Mod5=0值为True,5>4 Or 12<5值为True,Not(5>4 Or 12<5)值为False,故本题选D选项。
13.C
【详解】本题主要考查Python基本运算。%为求余, //为整除,程序实现了提取了变量x各位上的数值,然后倒置形成新数,因此C选项正确。
【点睛】
14.A
【详解】本题主要考查VB赋值语句。i*j=3*4=12,故本题选A选项。
15.D
【详解】本题考查Python运算符相关内容。在Python语言中,常见运算符优先级为:算术运算符>关系运算符>逻辑运算符。故答案为:D。
16.C
【详解】本题主要考查Python表达式的运算。表达式23//3+12%5**2=7+12%25=7+12=19,故本题选C选项。
17.D
【详解】本题考查Python程序。分析代码执行过程:初始值i=20。进入while循环,条件i>=5为真。打印i的值,输出20。更新i的值为20-5=15。再次进入while循环,条件i>=5仍为真。打印i的值,输出15。更新i的值为15-5=10。再次进入while循环,条件i>=5仍为真。打印i的值,输出10。更新i的值为10-5=5。再次进入while循环,条件i>=5仍为真。打印i的值,输出5。更新i的值为5-5=0。再次进入while循环,条件i>=5为假,循环终止。故答案为:D。
18.B
【详解】本题主要考查Python赋值语句。Python中,赋值语句是将等号右边的表达式赋给等号左边的变量,故不合法的是a+b = 3,选B选项。
19.B
【详解】本题考查流程图和程序代码分析相关内容。可以采用列表跟踪变量分析,找出规律:
初始
i=0
a
b
num=0
第1趟
1
0
1
1
第2趟
2
1
2
2
第3趟
3
2
1
第4趟
4
0
2
第5趟
5
1
1
第6趟
6
2
0
3
第7趟
7
0
1
4
第8趟
8
1
2
5
第9趟
9
2
1
第10趟
10
0
2
第11趟
11
1
1
可以看出,每循环六趟,num的值共增3;且每六趟循环,num的递增情况:1、1、0、0、0、1。故本题答案是B选项。
20.A
【详解】本题考查算法。
A对于步骤较多的算法,只能用流程图才能描述。这个说法是错误的。描述算法的方法有多种,包括自然语言、伪代码、流程图等。每种方法都有其适用的场景和优缺点。流程图在描述复杂算法时确实有其优势,如直观、易于理解等,但并非只能用流程图才能描述。自然语言、伪代码等同样可以清晰地描述复杂的算法。其它选项均正确,故正确答案为:选项A。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$