登录二一教育在线组卷平台 助您教考全无忧
2022年山东省东营市信息技术等级考试 Python 7
一、单选题
1.如下流程图表示的算法是( )
A.输出c,b, a
B.输出最大值
B. 输出最小值 D.比较a , b,c大小
2.阅读下列程序框图,运行相应的程序,则输出( )
A.15 B.20 C.10 D.30
3.程序框图如下图所示。如果上述程序运行的结果为S=132,那么判断框中应填入( )
A.k<=10 B.k>10 C.k<=11 D.k>=11
4.(2021七下·日照期末)我们利用枚举的策略解决问题时,下列说法错误的是( )
A.要按一定的顺序枚举 B.枚举时只可列表,不可画图
C.要对结果进行比较,做出选择 D.做到不重复,不遗漏
5.以下是计算S=1+6+11+…+101的程序代码,请完善程序。 ( )
s=0; k=1
while (k<=101):
A.s=s+5;k=k+1 B.s=s+k;k=k+5
C.k=s+k;s=s+5 D.k=s+5;s=k+5
6.求出100以内满足a
A.a2+b2=c2 B.a*2+b*2=c*2
C.a*a+b*b==c*c D.a^2+b^2==c^2
7.假定母鸡每只4元,公鸡每只3元,小鸡每只2角5分,每种鸡都要买。现有100元,要买100只鸡,问有多少种方案。求解这个问题,最适合的算法是( )
A.枚举 B.解析 C.排序 D.查找
8.假定母鸡每只4元,公鸡每只3元,小鸡每只2角5分,每种鸡都要买。现有100元, 要买100只鸡,问有多少种方案。
求解这个问题,若用枚举法来求解,公鸡数量的枚举范围应为( )
A.[0,100] B.[1,33] C.[0,33] D.[1,25]
9.假定母鸡每只4元,公鸡每只3元,小鸡每只2角5分,每种鸡都要买。现有100元,要买100只鸡,问有多少种方案。
求解这个问题,若用枚举法来求解,同时列举母鸡数量x和公鸡数量y,则检验表达式为( )
A.x+y=100 B.4*x+3*y=100
C.4*x+3*y+(100-x-y)//4==100 D.4*x+3*y+(100-x-y)/4=100
10.有如下Python程序,运行后输出的值是( )
A.0 B.10 C.15 D.55
11.下列程序运行后,将把1~100之间能够被5且能被7整除的数输出。以下是实现上述功能的程序,请填空。( )
A.i/5==0 and i/7==0 B.i%5=0 and i%7=0
C.i%5==0 and i%7==0 D.i/5=0 and i/7=0
12.已知f(1)=1,f(2)=2,当n>=3时,f(n)=f(n-1)+f(n-2),编程求f(100)的值,应选择的算法为( )
A.解析法 B.穷举法 C.迭代法 D.冒泡排序法
13.冒泡法是一种常用的排序方法,在排序时经常要进行数据的交换。下列四个选项中,( )不能正确的将x和y两个变量中的数据进行交换。
A.x=y;y=x B.x=x+y;y=x-y;x=x-y
C.m=x;x=y;y=m D.m=y;y=x;x=m
14.有一组数,依次为“27、32、36、25、18”,若采用冒泡排序算法对其进行升序排列,则第二趟排序结果是( )
A.18 25 27 32 36 B.18 25 36 32 27
C.27 25 18 32 36 D.18 27 25 32 36
15.运行下列代码时如果你输入的数字依次是4、5、6,那么程序运行结果是( )
A.4 B.5
C.6 D.以上都有可能
16.下列流程图是出租车计价器的部分算法(里程单位:公里),如行驶里程数是6.5 6.56.5公里,则输出n的结果是( )
A.6.5 B.15 C.8 D.14
17.以下程序运行后,输入“蓝”显示的结果是( )
A.red B.blue C.green D.请完善程序
18.运行以下Python代码时,如果你准备通过键盘输入的数字是-2,那么运行程序后得到的结果是( )
A.6.28 B.12.56
C.请输入一个正数! D.程序无法得到正确的结果
19.当a=6时,下列表达式结果为True的是( )
A.a > 2 or a < 3 B.a > 2 and a < 3
C.a = 2 or a < 3 D.not a > 3
20.下列不是比较运算符的是( )
A.!= B.= C.>= D.<
答案解析部分
1.【答案】B
【知识点】算法的流程图表示
【解析】【解答】第一个判断框判断是否c最大,“是”则输出c,“否”则执行第二个判断框,第二个判断框判断a与b的大小,哪一个大则输出哪一个。故该流程图表示的算法为输出最大值。故答案选:B。
【分析】本题考查了流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,一步步分析得出结果。
2.【答案】A
【知识点】算法的流程图表示
【解析】【解答】解∶第一次循环∶s=s+i=1,i=i+1=2<=5成立,进入第二次循环;
第二次循环:s=s+i=3,i=i+1=3<=5成立,进入第三次循环;
第三次循环:s=s+i=6,i=i+1=4<=5成立,进入第四次循环;
第四次循环:s=s+i=10,i=i+1=5<=5成立,进入第五次循环;
第五次循环:s=s+i=15,i=i+1=6<=5不成立,结束循环,输出15;
故答案为:A。
【分析】本题考查了流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,一步步分析得出结果。
3.【答案】A
【知识点】算法的流程图表示
【解析】【解答】解∶第一次循环∶S=S×K=12,K=K-1=11,判断条件不成立,进入第二次循环;
第二次循环:S=S×K=132,K=K-1=10,因为要输出S为132,故该判断条件成立,结束循环;
故可知判断条件为K<=10时,第一次条件不成立,继续循环,第二次条件成立,结束循环。
故答案选:A。
【分析】本题考查了流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,一步步分析得出结果。
4.【答案】B
【知识点】枚举算法及其程序设计
【解析】【解答】利用列举的策略解决问题时,要注意按照一定顺序进行列举,从而做到不重复,不遗漏,而且要对列举出的结果进行比较,做出选择。列举时可以运用列表法,也可以运用画图的方法。故答案选B。
【分析】本题考查枚举算法。枚举算法是指把问题所有的可能解一一罗列出来,并对每一个可能解进行判断,用来确定这个可能解是否为正确解。
5.【答案】B
【知识点】循环结构程序设计与分析
【解析】【解答】s=0,k=1,因为要计算1+6+11+…+101的和,且s初始值为0,故s为累加器,计算式为:s=s+k,又因为相邻两项之差为5,故k每次循环需要加5,故k=k+5。故答案选:B。
【分析】本题考查while循环结构分析。Python中while语句的一般形式:
while 判断条件(condition):
执行语句(statements)……
while 循环使用 else 语句,如果 while 后面的条件语句为 false 时,则执行 else 的语句块。 语法格式如下:
while :
else:
expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)。
6.【答案】C
【知识点】循环结构程序设计与分析
【解析】【解答】由程序可知,横线上应该填写判断是否满足勾股定理的数学表达式,但Python中不支持n^2的写法,故应该填a*a+b*b==c*c。故答案选:C。
【分析】本题主要考查循环结构程序分析。for循环语句的一般格式是︰
for <变量> in <序列>:
<循环体>
else:
[语句块]
7.【答案】A
【知识点】枚举算法及其程序设计
【解析】【解答】分情况进行假设,最后的得出结果。当100元买1只母鸡,1只公鸡时,小鸡能买多少,当100元买1只母鸡,2只公鸡,小鸡能买多少,其他情况依此类推,最总把所有情况都推断出来。故答案选:A。
【分析】本题考查枚举算法。枚举算法就是按问题本身的性质,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果。枚举法也称为“穷举法”。
8.【答案】C
【知识点】枚举算法及其程序设计
【解析】【解答】公鸡每只3元,每种鸡都要买,所以公鸡最少是买1只,设公鸡的最大数量为x只,故母鸡和小鸡的数量为100-x只,要使公鸡购买数量最大,应该使100-x只鸡中仅有1只母鸡,剩余均为小鸡,此时总金额为:3x+4+(99-x)*0.25<=100,解得x<=285/11,故知最大数量应为25只,故枚举范围应为[1,25]。故答案选:C。
【分析】本题考查枚举算法。枚举算法就是按问题本身的性质,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果,这种方法称为枚举算法,也称为“穷举法”。
9.【答案】D
【知识点】运算符与表达式;枚举算法及其程序设计
【解析】【解答】由题意可知,母鸡数量为x,公鸡数量为y,则小鸡数量为100-x-y,总金额为100元,则可列出检验表达式为:4*x+3*y+(100-x-y)/4=100。故答案选:D。
【分析】本题考查枚举算法与表达式。Python算术运算符:
运算符 表达式 描述
** x**y 求x的y次幂
* X*y 将x与y相乘
/ x/y 用x除以y,产生实数值
// x//y 用x除以y,,取整数部分
% x%y 用x除以y,取余数
+ x+y 将x与y相加
- x-y 将x减去y
10.【答案】B
【知识点】循环结构程序设计与分析
【解析】【解答】程序中变量j的取值为1,2,3,4,5,6,7,8,9,10。循环遍历变量j的取除以5取商的整数部分为0时(当j的取值为1,2,3,4时条件成立),变量s重新赋值为s+j,最后输出变量s(s=1+2+3+4)=10。故答案选:B。
【分析】本题主要考查循环结构程序分析。for循环语句的一般格式是︰
for <变量> in<序列>:
<循环体>
else:
[语句块]
11.【答案】C
【知识点】运算符与表达式;循环结构程序设计与分析
【解析】【解答】根据题意,空白处要填写的判断条件为∶能够被5且能被7整除的数。转化为编程语言为i%5==0 and i%7==0。B、D选项中运用的是赋值运算符(=),而根据题意判断条件需要比较运算符(==)。故答案选∶C。
【分析】本题考查循环结构语句分析及表达式的应用。在Python中,可以先通过提供的函数(range)构建数字序列,再通过for循环遍历序列中的所有元素。
Python算术运算符:
运算符 表达式 描述
** x**y 求x的y次幂
* X*y 将x与y相乘
/ x/y 用x除以y,产生实数值
// x//y 用x除以y,,取整数部分
% x%y 用x除以y,取余数
+ x+y 将x与y相加
- x-y 将x减去y
12.【答案】C
【知识点】递归算法及其程序设计
【解析】【解答】由f(n)=f(n-1)+f(n-2)知,要计算f(100)的值需要调用f(99)和f(98)的值,而计算f(99)又需要调用f(98)和f(97),……,这种思想是迭代算法的思想。故答案选:C。
【分析】本题考查迭代法的应用。迭代法是一种不断用变量的旧值递推出新值的解决问题的方法。迭代算法是用计算机解决问题的一种基本方法,一般用于数值计算。累加、累乘都是迭代算法的基础应用。
13.【答案】A
【知识点】常量、变量与赋值语句;排序算法及其程序设计
【解析】【解答】选项A:x=y是将y的值赋值给x,y=x是将x的值赋值给y,现在x里面存放的是y的值,y存放的是y的值,故不能实现交换;选项B:X=x+y,y=x-y=X+y-y=x,X=x-y=X+y-x=x,实现了x和y的交换;选项C:m=x,X=y,y=m=x,此选项进行了x、y的值交换;选项D:m=y,Y=x,x=m=y,此选项进行了x、y的值交换。故答案选:A。
【分析】本题主要考查排序算法中赋值语句的使用。对于一个变量进行多次赋值之后,最后一次赋值会是这个变量最终的值,每一次赋值都会替换上一次的赋值。
14.【答案】C
【知识点】排序算法及其程序设计
【解析】【解答】采用冒泡排序算法对其进行升序排列过程如下:
原始数据 27 32 36 25 18
第一趟 27 32 25 18 36
第二趟 27 25 18 32 36
第三趟 25 18 27 32 36
第四趟 18 25 27 32 36
故答案选:C。
【分析】本题考查冒泡排序。冒泡排序法∶就是在每一轮的筛选中找出当前元素组中最大的那个数在不断的交换中将当前元素组中最大的数赋值给当前元素组中最后一个元素空间。假如数组的长度是n,那么我们从1遍历到n-1,那么第一趟比较完毕后,第n个数一定是最大的;第二趟我们只需要从1遍历到n-2,那么第二趟比较完毕后,第n-1个数一定是倒数第二大的,依次这样操作就可以完成排序。
15.【答案】C
【知识点】分支结构程序设计与分析
【解析】【解答】若输入的数字依次为4、5、6,则a、b、c的值为4、5、6,接着判断a【分析】本题主要考查分支结构程序分析。本题程序是将4、5、6分别赋值给a、b、c,=在python中是赋值运算符,print()是输出函数。
16.【答案】B
【知识点】算法的流程图表示
【解析】【解答】由流程图知,当行驶里程数为6.5公里时,m的值为6.5,判断m>3的条件,满足条件,由n=8+2*(m-3)知n=8+2*(6.5-3)=15,最后输出n的值为15。故答案选:B。
【分析】本题考查流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,—步步分析得出结果。
17.【答案】B
【知识点】分支结构程序设计与分析
【解析】【解答】程序分析∶输入“红”、“蓝”、“绿”,输出对应的“red”. "blue”. “green”,输入的不是“红”、“蓝”、“绿”以外的内容,则输出“请完善程序,我还不知道啊!”。故答案选:B。
【分析】本题考查多重分支结构程序分析。本段程序的作用是判断输入的颜色,然后判断输出对应的英文单词。
18.【答案】C
【知识点】分支结构程序设计与分析
【解析】【解答】分析代码:1、变量r赋值为-2.0。2、进行分支判断,r>0不成立,因此代码会运行else代码部分:print("请输入一个正数!")。故答案选:C。
【分析】本题主要考查分支结构及赋值语句。在Python中,可以使用if条件语句来实现条件判断。if条件语句的一般格式为:
if<条件>:
语句块1>
else:
<语句块2>
19.【答案】A
【知识点】运算符与表达式
【解析】【解答】选项A∶a>2为True,a<3为False,True or False为True;选项B∶a>2为True,a<3为False,True and False为False;选项C∶a=2为False,a<3为False,False and False为False;选项D∶a>3为True,not False为False。故答案选:A。
【分析】本题考查的是对表达式的判断。and前后的表达式都为真则结果为真,or前后表达式有一个真,结果则为真,not后面表达式要为假,则结果会为真。
20.【答案】B
【知识点】运算符与表达式
【解析】【解答】比较运算符有∶=、>、>=、<、<=、<>、Is、Like、!=,没=。故答案选:B。
【分析】本题考查的是运算符。运算符有算术运算符、字符运算符、关系运算符、逻辑运算符。
二一教育在线组卷平台(zujuan.21cnjy.com)自动生成 1 / 1登录二一教育在线组卷平台 助您教考全无忧
2022年山东省东营市信息技术等级考试 Python 7
一、单选题
1.如下流程图表示的算法是( )
A.输出c,b, a
B.输出最大值
B. 输出最小值 D.比较a , b,c大小
【答案】B
【知识点】算法的流程图表示
【解析】【解答】第一个判断框判断是否c最大,“是”则输出c,“否”则执行第二个判断框,第二个判断框判断a与b的大小,哪一个大则输出哪一个。故该流程图表示的算法为输出最大值。故答案选:B。
【分析】本题考查了流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,一步步分析得出结果。
2.阅读下列程序框图,运行相应的程序,则输出( )
A.15 B.20 C.10 D.30
【答案】A
【知识点】算法的流程图表示
【解析】【解答】解∶第一次循环∶s=s+i=1,i=i+1=2<=5成立,进入第二次循环;
第二次循环:s=s+i=3,i=i+1=3<=5成立,进入第三次循环;
第三次循环:s=s+i=6,i=i+1=4<=5成立,进入第四次循环;
第四次循环:s=s+i=10,i=i+1=5<=5成立,进入第五次循环;
第五次循环:s=s+i=15,i=i+1=6<=5不成立,结束循环,输出15;
故答案为:A。
【分析】本题考查了流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,一步步分析得出结果。
3.程序框图如下图所示。如果上述程序运行的结果为S=132,那么判断框中应填入( )
A.k<=10 B.k>10 C.k<=11 D.k>=11
【答案】A
【知识点】算法的流程图表示
【解析】【解答】解∶第一次循环∶S=S×K=12,K=K-1=11,判断条件不成立,进入第二次循环;
第二次循环:S=S×K=132,K=K-1=10,因为要输出S为132,故该判断条件成立,结束循环;
故可知判断条件为K<=10时,第一次条件不成立,继续循环,第二次条件成立,结束循环。
故答案选:A。
【分析】本题考查了流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,一步步分析得出结果。
4.(2021七下·日照期末)我们利用枚举的策略解决问题时,下列说法错误的是( )
A.要按一定的顺序枚举 B.枚举时只可列表,不可画图
C.要对结果进行比较,做出选择 D.做到不重复,不遗漏
【答案】B
【知识点】枚举算法及其程序设计
【解析】【解答】利用列举的策略解决问题时,要注意按照一定顺序进行列举,从而做到不重复,不遗漏,而且要对列举出的结果进行比较,做出选择。列举时可以运用列表法,也可以运用画图的方法。故答案选B。
【分析】本题考查枚举算法。枚举算法是指把问题所有的可能解一一罗列出来,并对每一个可能解进行判断,用来确定这个可能解是否为正确解。
5.以下是计算S=1+6+11+…+101的程序代码,请完善程序。 ( )
s=0; k=1
while (k<=101):
A.s=s+5;k=k+1 B.s=s+k;k=k+5
C.k=s+k;s=s+5 D.k=s+5;s=k+5
【答案】B
【知识点】循环结构程序设计与分析
【解析】【解答】s=0,k=1,因为要计算1+6+11+…+101的和,且s初始值为0,故s为累加器,计算式为:s=s+k,又因为相邻两项之差为5,故k每次循环需要加5,故k=k+5。故答案选:B。
【分析】本题考查while循环结构分析。Python中while语句的一般形式:
while 判断条件(condition):
执行语句(statements)……
while 循环使用 else 语句,如果 while 后面的条件语句为 false 时,则执行 else 的语句块。 语法格式如下:
while :
else:
expr 条件语句为 true 则执行 statement(s) 语句块,如果为 false,则执行 additional_statement(s)。
6.求出100以内满足aA.a2+b2=c2 B.a*2+b*2=c*2
C.a*a+b*b==c*c D.a^2+b^2==c^2
【答案】C
【知识点】循环结构程序设计与分析
【解析】【解答】由程序可知,横线上应该填写判断是否满足勾股定理的数学表达式,但Python中不支持n^2的写法,故应该填a*a+b*b==c*c。故答案选:C。
【分析】本题主要考查循环结构程序分析。for循环语句的一般格式是︰
for <变量> in <序列>:
<循环体>
else:
[语句块]
7.假定母鸡每只4元,公鸡每只3元,小鸡每只2角5分,每种鸡都要买。现有100元,要买100只鸡,问有多少种方案。求解这个问题,最适合的算法是( )
A.枚举 B.解析 C.排序 D.查找
【答案】A
【知识点】枚举算法及其程序设计
【解析】【解答】分情况进行假设,最后的得出结果。当100元买1只母鸡,1只公鸡时,小鸡能买多少,当100元买1只母鸡,2只公鸡,小鸡能买多少,其他情况依此类推,最总把所有情况都推断出来。故答案选:A。
【分析】本题考查枚举算法。枚举算法就是按问题本身的性质,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果。枚举法也称为“穷举法”。
8.假定母鸡每只4元,公鸡每只3元,小鸡每只2角5分,每种鸡都要买。现有100元, 要买100只鸡,问有多少种方案。
求解这个问题,若用枚举法来求解,公鸡数量的枚举范围应为( )
A.[0,100] B.[1,33] C.[0,33] D.[1,25]
【答案】C
【知识点】枚举算法及其程序设计
【解析】【解答】公鸡每只3元,每种鸡都要买,所以公鸡最少是买1只,设公鸡的最大数量为x只,故母鸡和小鸡的数量为100-x只,要使公鸡购买数量最大,应该使100-x只鸡中仅有1只母鸡,剩余均为小鸡,此时总金额为:3x+4+(99-x)*0.25<=100,解得x<=285/11,故知最大数量应为25只,故枚举范围应为[1,25]。故答案选:C。
【分析】本题考查枚举算法。枚举算法就是按问题本身的性质,列举所有可能的结果,并逐一判断,排除其中不符合要求的结果,这种方法称为枚举算法,也称为“穷举法”。
9.假定母鸡每只4元,公鸡每只3元,小鸡每只2角5分,每种鸡都要买。现有100元,要买100只鸡,问有多少种方案。
求解这个问题,若用枚举法来求解,同时列举母鸡数量x和公鸡数量y,则检验表达式为( )
A.x+y=100 B.4*x+3*y=100
C.4*x+3*y+(100-x-y)//4==100 D.4*x+3*y+(100-x-y)/4=100
【答案】D
【知识点】运算符与表达式;枚举算法及其程序设计
【解析】【解答】由题意可知,母鸡数量为x,公鸡数量为y,则小鸡数量为100-x-y,总金额为100元,则可列出检验表达式为:4*x+3*y+(100-x-y)/4=100。故答案选:D。
【分析】本题考查枚举算法与表达式。Python算术运算符:
运算符 表达式 描述
** x**y 求x的y次幂
* X*y 将x与y相乘
/ x/y 用x除以y,产生实数值
// x//y 用x除以y,,取整数部分
% x%y 用x除以y,取余数
+ x+y 将x与y相加
- x-y 将x减去y
10.有如下Python程序,运行后输出的值是( )
A.0 B.10 C.15 D.55
【答案】B
【知识点】循环结构程序设计与分析
【解析】【解答】程序中变量j的取值为1,2,3,4,5,6,7,8,9,10。循环遍历变量j的取除以5取商的整数部分为0时(当j的取值为1,2,3,4时条件成立),变量s重新赋值为s+j,最后输出变量s(s=1+2+3+4)=10。故答案选:B。
【分析】本题主要考查循环结构程序分析。for循环语句的一般格式是︰
for <变量> in<序列>:
<循环体>
else:
[语句块]
11.下列程序运行后,将把1~100之间能够被5且能被7整除的数输出。以下是实现上述功能的程序,请填空。( )
A.i/5==0 and i/7==0 B.i%5=0 and i%7=0
C.i%5==0 and i%7==0 D.i/5=0 and i/7=0
【答案】C
【知识点】运算符与表达式;循环结构程序设计与分析
【解析】【解答】根据题意,空白处要填写的判断条件为∶能够被5且能被7整除的数。转化为编程语言为i%5==0 and i%7==0。B、D选项中运用的是赋值运算符(=),而根据题意判断条件需要比较运算符(==)。故答案选∶C。
【分析】本题考查循环结构语句分析及表达式的应用。在Python中,可以先通过提供的函数(range)构建数字序列,再通过for循环遍历序列中的所有元素。
Python算术运算符:
运算符 表达式 描述
** x**y 求x的y次幂
* X*y 将x与y相乘
/ x/y 用x除以y,产生实数值
// x//y 用x除以y,,取整数部分
% x%y 用x除以y,取余数
+ x+y 将x与y相加
- x-y 将x减去y
12.已知f(1)=1,f(2)=2,当n>=3时,f(n)=f(n-1)+f(n-2),编程求f(100)的值,应选择的算法为( )
A.解析法 B.穷举法 C.迭代法 D.冒泡排序法
【答案】C
【知识点】递归算法及其程序设计
【解析】【解答】由f(n)=f(n-1)+f(n-2)知,要计算f(100)的值需要调用f(99)和f(98)的值,而计算f(99)又需要调用f(98)和f(97),……,这种思想是迭代算法的思想。故答案选:C。
【分析】本题考查迭代法的应用。迭代法是一种不断用变量的旧值递推出新值的解决问题的方法。迭代算法是用计算机解决问题的一种基本方法,一般用于数值计算。累加、累乘都是迭代算法的基础应用。
13.冒泡法是一种常用的排序方法,在排序时经常要进行数据的交换。下列四个选项中,( )不能正确的将x和y两个变量中的数据进行交换。
A.x=y;y=x B.x=x+y;y=x-y;x=x-y
C.m=x;x=y;y=m D.m=y;y=x;x=m
【答案】A
【知识点】常量、变量与赋值语句;排序算法及其程序设计
【解析】【解答】选项A:x=y是将y的值赋值给x,y=x是将x的值赋值给y,现在x里面存放的是y的值,y存放的是y的值,故不能实现交换;选项B:X=x+y,y=x-y=X+y-y=x,X=x-y=X+y-x=x,实现了x和y的交换;选项C:m=x,X=y,y=m=x,此选项进行了x、y的值交换;选项D:m=y,Y=x,x=m=y,此选项进行了x、y的值交换。故答案选:A。
【分析】本题主要考查排序算法中赋值语句的使用。对于一个变量进行多次赋值之后,最后一次赋值会是这个变量最终的值,每一次赋值都会替换上一次的赋值。
14.有一组数,依次为“27、32、36、25、18”,若采用冒泡排序算法对其进行升序排列,则第二趟排序结果是( )
A.18 25 27 32 36 B.18 25 36 32 27
C.27 25 18 32 36 D.18 27 25 32 36
【答案】C
【知识点】排序算法及其程序设计
【解析】【解答】采用冒泡排序算法对其进行升序排列过程如下:
原始数据 27 32 36 25 18
第一趟 27 32 25 18 36
第二趟 27 25 18 32 36
第三趟 25 18 27 32 36
第四趟 18 25 27 32 36
故答案选:C。
【分析】本题考查冒泡排序。冒泡排序法∶就是在每一轮的筛选中找出当前元素组中最大的那个数在不断的交换中将当前元素组中最大的数赋值给当前元素组中最后一个元素空间。假如数组的长度是n,那么我们从1遍历到n-1,那么第一趟比较完毕后,第n个数一定是最大的;第二趟我们只需要从1遍历到n-2,那么第二趟比较完毕后,第n-1个数一定是倒数第二大的,依次这样操作就可以完成排序。
15.运行下列代码时如果你输入的数字依次是4、5、6,那么程序运行结果是( )
A.4 B.5
C.6 D.以上都有可能
【答案】C
【知识点】分支结构程序设计与分析
【解析】【解答】若输入的数字依次为4、5、6,则a、b、c的值为4、5、6,接着判断a【分析】本题主要考查分支结构程序分析。本题程序是将4、5、6分别赋值给a、b、c,=在python中是赋值运算符,print()是输出函数。
16.下列流程图是出租车计价器的部分算法(里程单位:公里),如行驶里程数是6.5 6.56.5公里,则输出n的结果是( )
A.6.5 B.15 C.8 D.14
【答案】B
【知识点】算法的流程图表示
【解析】【解答】由流程图知,当行驶里程数为6.5公里时,m的值为6.5,判断m>3的条件,满足条件,由n=8+2*(m-3)知n=8+2*(6.5-3)=15,最后输出n的值为15。故答案选:B。
【分析】本题考查流程图分析。解题的关键是分析流程图,从流程图中得出计算的类型与数据,—步步分析得出结果。
17.以下程序运行后,输入“蓝”显示的结果是( )
A.red B.blue C.green D.请完善程序
【答案】B
【知识点】分支结构程序设计与分析
【解析】【解答】程序分析∶输入“红”、“蓝”、“绿”,输出对应的“red”. "blue”. “green”,输入的不是“红”、“蓝”、“绿”以外的内容,则输出“请完善程序,我还不知道啊!”。故答案选:B。
【分析】本题考查多重分支结构程序分析。本段程序的作用是判断输入的颜色,然后判断输出对应的英文单词。
18.运行以下Python代码时,如果你准备通过键盘输入的数字是-2,那么运行程序后得到的结果是( )
A.6.28 B.12.56
C.请输入一个正数! D.程序无法得到正确的结果
【答案】C
【知识点】分支结构程序设计与分析
【解析】【解答】分析代码:1、变量r赋值为-2.0。2、进行分支判断,r>0不成立,因此代码会运行else代码部分:print("请输入一个正数!")。故答案选:C。
【分析】本题主要考查分支结构及赋值语句。在Python中,可以使用if条件语句来实现条件判断。if条件语句的一般格式为:
if<条件>:
语句块1>
else:
<语句块2>
19.当a=6时,下列表达式结果为True的是( )
A.a > 2 or a < 3 B.a > 2 and a < 3
C.a = 2 or a < 3 D.not a > 3
【答案】A
【知识点】运算符与表达式
【解析】【解答】选项A∶a>2为True,a<3为False,True or False为True;选项B∶a>2为True,a<3为False,True and False为False;选项C∶a=2为False,a<3为False,False and False为False;选项D∶a>3为True,not False为False。故答案选:A。
【分析】本题考查的是对表达式的判断。and前后的表达式都为真则结果为真,or前后表达式有一个真,结果则为真,not后面表达式要为假,则结果会为真。
20.下列不是比较运算符的是( )
A.!= B.= C.>= D.<
【答案】B
【知识点】运算符与表达式
【解析】【解答】比较运算符有∶=、>、>=、<、<=、<>、Is、Like、!=,没=。故答案选:B。
【分析】本题考查的是运算符。运算符有算术运算符、字符运算符、关系运算符、逻辑运算符。
二一教育在线组卷平台(zujuan.21cnjy.com)自动生成 1 / 1