一、选择题
1.小新编制了一个python程序如下,但程序无法执行,你帮他找出程序中一共有几处错误( )
1a=3
b=input()
c=a+b
print("c")
A.1 .2 .3 .4
2.下列选项中,能作为python程序变量名的是( )
A.if .2x .a*b .x2
3.已知列表list1=[8,22,34,9,7],则python表达式len(list1)+min(list1)的值为( )
A.5 .34 .7 .12
4.有如下 VB 程序段:
s1 = "python": s2 = "visual"
i = 1: j = 1: s = ""
Do While i <= Len(s1) And j <= Len(s2)
If Mid(s1, i, 1) >= Mid(s2, j, 1) Then
s = s + Mid(s1, i, 1)
Else
j = j + 1
End If
i = i + 1
Loop
执行该程序后,j的值是( )
A.2 .3 .5 . 7
5.计算机语言发展大致经历了机器语言、汇编语言和高级语言阶段。可以被计算机直接执行的语言是( ) , Python语言属于( )语言。
A.机器,高级 .高级,汇编 .高级,机器 .汇编,高级
6.运行下列 Python程序,结果正确的是( )
a=18
b=7
c=a%b
b=a%b
print(a,b)
A.18 5 .5 18 .18 4 .4 18
7.下面( )是Python合法的变量名
A.int32 .40XL .self .name
8.下列选项中,不能作为python程序变量名的是( )
A.abc .abc123 .123abc .abc__123
9.以下Python程序段执行后,输出结果为( )。
A.m不能被3整除 .29不能被3整除 .29能被3整除 .m能被3整除
10.关于Python,以下几种说法不正确的是( )。
A.Python是一种高级程序设计语言
B.Python属于汇编语言,或者说属于低级语言
C.Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点
D.Python是一种面向对象的、解释性计算机语言
11.12 Python语言语句块的标记是( )
A.分号 .逗号 .缩进 ./
12.在Python中,算式5+6*4%(2+8)结果为( )
A.25
B.15
C.9
D.7.4
13.在Python中print(8+7%2**2)的执行结果是( )
A.5 .1 .6 .11
14.下列变量名在Python中合法的是( )
A.36B .F55# .for ._Good
15.下列Python程序段运行的结果是( )
f=[‘A’,’B’,’C’]
a=len(f)
print(‘a=’,a)
A.a=2 .a=’A’ .a=’C’ .a=3
二、程序填空
16.小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢?请帮小金完成代码编程.
def convert(s):
m=0
le=len(s)
key=s[le-1]
if key=="B":
n=2
elif key=="D":
_______
else:
n=16
i=0
while i<=le-2:
c=s[le-1-i]
if c>="0"and c<="9":
a=ord(c)-ord("0")
elif c>="A"and c<="F":
a=ord(c)-ord("A")+10
_____________
i+=1
return m
s=input("请输入算式")
result=0;suanfu1="";suanfu2="";s1=""
for i in range(len(s)):
c=s[i]
if c=="+" or c=="-" or c=="=":
__________
suanfu1=suanfu2
suanfu2=c
if suanfu1=="":
result=t
if suanfu1=="+":
result=result+t
if suanfu1=="-":
result=result-t
s1=""
else:
s1=s1+c
print("计算结果为"+str(result)+"D")
(1)将程序横线处补充完整
(2)如输入“1110B+10D-30H=”则输出结果为___________。
17.学习了Python绘制图形操作后,信息小组接到了编程演示的任务。为此,小组同学编写了一段代码,绘制出多个不同颜色的圆形。
代码如下:
import turtle
turtle. bgcolor("black")
colors=["red", "green", "blue", "yellow"]
for x ① range(100):
turtle. pencolor(colors[x%4])
turtle. circle(x)
turtle. left(90)
请分析任务,完成下列题目。
(1)程序中①处应填写(________) 。
A.print B.input C.in D.colors
(2)程序中x%4的作用是(________)。
A.计算x乘以4的结果
B.计算x除以4的整数部分
C.计算x除以4的小数部分
D.计算x除以4的余数
(3)执行此程序,绘制出圆形的总颜色数是(________)。
A.1 B.4 C.5 D.100
(4)执行此程序,绘制出圆形的总个数是(________)。
A.1 B.4 C.99 D.100
(5)此程序属于程序设计结构中的(________)。
A.顺序结构 B.分支结构
C.循环结构 D.跳转结构
18.阅读程序。观察使用随机数求解百钱白鸡问题的代码并回答问题。
百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?”翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?
import random
while True:
x=random.randrange(0,20)
y=random.randrange(0,33)
z=random.randrange(0,100)
if 5*x+3*y+z/3==100 and x+y+z==100:
print('公鸡',x)
print('母鸡',y)
print('小鸡',z)
(1)Python中导入库文件的命令是________。
(2)random.randrange(0,20)生成的随机数的范围是_________ 。
(3)如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为
________
(4)while True 的作用是______ 。
(5)如果while True造成程序无法停止,我们可以在程序中添加一行 _________。
19.小强开展网上直播售货,为此购买了以下直播硬件设备:①手机②耳机③自拍杆④数码照相机⑤背景画⑥无线路由器
请回答下列问题:
(1)在购买的直播硬件设备中,属于模数转换的设备是__________(多选,填序号)
(2)小强选择借助某著名直播平台售货,根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:1,在不考虑视频传输优化的情况下,问小强家目前10Mbps的宽带__________(选填:能/不能)满足直播要求。请列式证明__________。
(3)小强将某一天的售货情况从平台导出,保存为文件shqk.xlsx.数据已按“流水号”升序排序,如图a所示。流水号为2019030602的售货记录中,已成交的商品类别数是__________(填写数字),该流水号的总利润是__________元(填写数字,保留1位小数)
图a
(4)为了快速了解各类别商品的利润,小强用python编程处理。处理的结果界面如图b所示。部分代码如下,请在①②划线处填写合适的代码。
图b
import pandas as pd
import numpy as np
import matplotlib. pyplot as plt
detail=pD.read_excel (___)
print(detail)
for i in range(len(detail[:])):
if detail[‘成交与否’][i]==1:
detail[‘lirun’]=___
dg=detai1[[‘类别’, ‘lirun’]]. groupby(by=‘类别’)
print(“总利润”,detail[‘lirun’].sum())
’数据可视化代码略
20.程序设计:唐三藏又被妖怪抓走了,这次孙悟空还是没打得过妖怪,于是来求观音菩萨。观音菩萨告诉孙悟空,在天庭里身高正好为1000米的那位神仙可以降伏此妖。于是悟空立刻来到天上,在玉皇大帝的神仙册上看到了按身高从矮到高排列有10000个神仙。由于时间紧迫,悟空想用最短的时间找到这位神仙,这样才可以尽快解救唐僧。
代码如下:
List=list(map(int,input(“请按身高递增顺序依次输入10000个神仙的身高”).split()))
left=1
right=10000
while ①
mid= ②
if List[mid]==1000:
③
elif List[mid]<1000:
④
else:
⑤
print(“能帮孙悟空的神仙在第{0}位上”.format(mid+l))
(1)程序代码中①处正确的代码是(_______)。
A.left<right B.left<=right C.left!=right D.left>right
(2)程序代码中②处正确的代码是(_______)。
A.(left+right)/2 B.(left+right)\\2
C.(left+right)//2 D.(left+right)\\\\2
(3)程序代码中③处正确的代码是(_______)。
A.pass B.print(mid)z C.break D.continue
(4)程序代码中④处正确的代码是(_______)。-
A.left=mid B.right=mid C.left=mid+1 D.right=mid-1
(5)程序代码中⑤处正确的代码是(_______)。
A.left=mid B.right=mid C.left=mid+1 D.right=mid-1
21.程序设计:在舞会上,男生、女生各自排成一队。舞会开始时,依次从男队和女队的队头各出一人配成舞伴。跳完后的两人重新回到队尾。
例如:boy=['Alex','Steven','Jack'],girl=['Ada*,'Babs'.,'Danla','Jane']
输出:
Turn1:(Alex,Ada)
Turn2:(Steven,Babs)
Turn3:(Jack,Danla)
Turn4:(Alex,jane)
……
Turn12:(Jack,jane)
代码如下:
boy=['Alex','Steven',‘Jack']
girl=['Ada','Babs','Danla','Jane']
for i in range(12):
x,y= ① #出队
print(“Turn{:2}):({},{})".format(i+1,x,y))
boy.append( ② ) #再进队
girl.append( ③ ) #再进队
(1)程序代码中①处正确的代码是(_______)。
A.boy.pop(l).girl.pop(l) B.girl.pop(l),boy.pop(l)
C.boy.pop(0),girl.pop(0) D.girl.pop(0),boy.pop(0)
(2)程序代码中②处正确的代码是(_______)。
A.x B.y C.i D.i+1
(3)程序代码中③处正确的代码是(_______)。
A.x B.y C.i D.i+1
【参】***试卷处理标记,请不要删除
一、选择题
1.C
【详解】
本题考查Python程序语法
Python变量命名不能以数字开头、变量b、c必须先定义后使用。故有3处错误,故本题选C选项
解析:C
【详解】
本题考查Python程序语法
Python变量命名不能以数字开头、变量b、c必须先定义后使用。故有3处错误,故本题选C选项
2.D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故能作为python程序变量名的是x2,故本题选D选项。
解析:D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故能作为python程序变量名的是x2,故本题选D选项。
3.D
【详解】
本题主要考查Python表达式的运算。列表list1=[8,22,34,9,7],则python表达式len(list1)+min(list1)=5+7=12,故本题选D选项。
解析:D
【详解】
本题主要考查Python表达式的运算。列表list1=[8,22,34,9,7],则python表达式len(list1)+min(list1)=5+7=12,故本题选D选项。
4.C
【详解】
本题主要考查VB程序的执行。分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2的每一个字符,若s1中的字符大于或等于s2中的字符,则将s1中对应的字
解析:C
【详解】
本题主要考查VB程序的执行。分析程序可知,变量i控制从s1中取字符,变量j从s2中取字符,依次比较字符串s1、s2的每一个字符,若s1中的字符大于或等于s2中的字符,则将s1中对应的字符拼接到变量s中,否则变量j递增。第一遍循环,i=1,j=1,“p”<“v”,j=j+1=2,i=i+1=2;第二遍循环,“y”>“i”,i=i+1=3;第三遍循环,“t”>“i”,i=i+1=4;第四遍循环,“h”<“i”,j=j+1=3,i=i+1=5;第五遍循环,“o”<“s”,j=j+1=4,i=i+1=6;第六遍循环,“n”<“u”,j=j+1=5,i=i+1=7,循环结束,故执行该程序后,j的值是5,故本题选C选项。
5.A
【详解】
本题考查的知识点是计算机语言的发展。计算机语言从最初的机器语言(二进制,可以被计算机直接执行的语言),发展到使用助记符的汇编语言,再到更易理解的高级语言,包括C、C++、Java、C#
解析:A
【详解】
本题考查的知识点是计算机语言的发展。计算机语言从最初的机器语言(二进制,可以被计算机直接执行的语言),发展到使用助记符的汇编语言,再到更易理解的高级语言,包括C、C++、Java、C#、Python等等。故选项A正确。
6.C
【详解】
本题主要考查Python程序的执行。a=18,b=7,c=a%b=4,b=a%b=4,输出a和b的值是18和4,故本题选C选项。
解析:C
【详解】
本题主要考查Python程序的执行。a=18,b=7,c=a%b=4,b=a%b=4,输出a和b的值是18和4,故本题选C选项。
7.ACD
【详解】
本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,不能是关键字,故本题选ACD选项。
解析:ACD
【详解】
本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,不能是关键字,故本题选ACD选项。
8.C
【详解】
本题考查的是python的变量命名。python的变量名是由数字、字母、下划线组成,并且数字不能打头。故选项C符合题意。
解析:C
【详解】
本题考查的是python的变量命名。python的变量名是由数字、字母、下划线组成,并且数字不能打头。故选项C符合题意。
9.B
【详解】
本题考查的是Python选择语句。print是输出语句,%是求余,!=是不等于,29%3=2,条件不成立,则执行输出29不能被3整除。故本题应选B。
解析:B
【详解】
本题考查的是Python选择语句。print是输出语句,%是求余,!=是不等于,29%3=2,条件不成立,则执行输出29不能被3整除。故本题应选B。
10.B
【详解】
本题主要考查Python程序设计语言。Python是一种高级程序设计语言;Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点;Python是一种面向对象的、
解析:B
【详解】
本题主要考查Python程序设计语言。Python是一种高级程序设计语言;Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点;Python是一种面向对象的、解释性计算机语言,故本题选B选项。
11.C
【详解】
本题考查的是Python语言相关知识。Python语言中用缩进来标记语句块,故选项C正确。
解析:C
【详解】
本题考查的是Python语言相关知识。Python语言中用缩进来标记语句块,故选项C正确。
12.C
【详解】
本题主要考查Python表达式的运算。小括号优先级最高,*和%求余数是第二等级,从左到右,5+6*4%(2+8)=5+6*4%10 =5+ 24%10=5+4=9,故本题选C选项。
解析:C
【详解】
本题主要考查Python表达式的运算。小括号优先级最高,*和%求余数是第二等级,从左到右,5+6*4%(2+8)=5+6*4%10 =5+ 24%10=5+4=9,故本题选C选项。
13.D
【详解】
本题考查的是Python表达式。**是幂次方优先级最高,%是求余。8+7%2**2=8+7%4=8+3=11,print是输出语句。故选项D正确。
解析:D
【详解】
本题考查的是Python表达式。**是幂次方优先级最高,%是求余。8+7%2**2=8+7%4=8+3=11,print是输出语句。故选项D正确。
14.D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
解析:D
【详解】
本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字,故“_Good”在Python中是合法的变量名,故本题选D选项。
15.D
【详解】
本题主要考查Python程序的执行。a=len(f)=3,故print(‘a=’,a)的结果是a=3,故本题选D选项。
解析:D
【详解】
本题主要考查Python程序的执行。a=len(f)=3,故print(‘a=’,a)的结果是a=3,故本题选D选项。
二、程序填空
16.n=10 m=m+(n**(le-2-i))*a t=convert(s1) -24D
【详解】
本题主要考查Python程序的执行与调试。①二进制的权值是2,十进制的权值是10,十六进制的权值是16,此处是十进制的情况,故填n=10。②二进制、十六进制转化为十进制的方法是“按权展开、逐项相加”,从右往左加,变量i的初值等于0,故此处要变换为le-2-i,故此处填m=m+(n**(le-2-i))*a。③当字符c是“+”、“-”、“=”时,则表明第一个运算数已全部保存到变量s1中,此处需要将其转化为十进制保存到变量t中,故填t=convert(s1)。④1110B转化为十进制数是14D,30H转化为十进制数是48D,故1110B+10D-30H=-24D。
17.C D B D C
【详解】
本题主要考查Python程序调试。①Python程序for循环格式是:for 变量 in range( ),故程序中①处应填写in,选C选项。②程序中x%4的作用是计算x除以4的余数,选D选项。③colors=["red", "green", "blue", "yellow"],依次循环从colors中取颜色,故执行此程序,绘制出圆形的总颜色数是4,故本题选B选项。④x的范围是从0到99,故执行此程序,绘制出圆形的总个数是100个,选D选项。⑤此程序属于程序设计结构中的循环结构,选C选项。
18.import 0~19(包括0和19) import random as r 让程序无限循环 break;
【详解】
本题主要考查Python程序的执行与调试。①Python中导入库文件的命令是import,如import random。②random.randrange(0,20)生成的随机数的范围是0~19(包括0和19)。③如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为import random as r(给random取个简单的别名)。④while True 的作用是让程序无限循环。⑤如果while True造成程序无法停止,我们可以在程序中添加一行break;(满足条件后,执行break;可以跳出循环)。
19.①④ 不能 1080*1920*24*25*1/1024/1024/100≈10.8Mbps,大于网络传输带宽10Mbps,所以不能满足直播要求。 1 2或2.0 ‘shqk. xlsx’或“shqk. xlsx” (detai1[‘售价’]-detail[‘进价’])*detai1[‘数量’]
【详解】
本题主要考查Python程序设计相关知识点。①手机、数码照相机均属于模数转换的设备,可以实现模拟信号与数字信号的转换,故填①④。②根据直播平台要求,直播画面是1080*1920像素、24位真彩色、帧频为25fps,视频压缩比为100:1,在不考虑视频传输优化的情况下,小强家目前10Mbps的宽带不能满足直播要求。③视频存储容量=像素*颜色深度*帧频*时长,1080*1920*24*25*1/1024/1024/100≈10.8Mbps,大于网络传输带宽10Mbps,所以不能满足直播要求。④由图可知,1表示成交,0表示未成交,流水号为2019030602的售货记录中,已成交的商品类别数是1,都是饮料(即货号17和货号5)。⑤该流水号的总利润是(2.9-2.5)*3+(1-0.8)*4=2.0,故填2或2.0。⑥该表格文件名是shqk.xlsx,此处读入该表格文件,故填‘shqk. xlsx’或“shqk. xlsx”。⑦利润=(售价-进价)*数量,数据已经读到detail中,故此处填(detai1[‘售价’]-detail[‘进价’])*detai1[‘数量’]。
20.B C C C D
【详解】
本题主要考查二分查找算法及Python程序实现。①二分查找的循环条件是left<=right,故选B选项。②此处是取中间值,需要整除2,故填(left+right)//2 ,故选C选项。③如果mid对应的列表值是1000,表示已找到,则用break跳出循环,选C选项。④如果mid对应的列表值小于1000,则需要更新left的值为mid+1继续循环,选C选项。⑤否则更新right的值为mid-1,选D选项。
21.C A B
【详解】
本题主要考查队列数据结构及Python程序。①队列是从队头出队,队尾入队,使用pop函数出队,队头的索引值是0,故此处填boy.pop(0),girl.pop(0)。②队列入队使用append方法追加到队列尾,此处是男生入队boy.append(x),故选A选项。③同理,此处是女生入队girl.append(y),故选B选项。下载本文