myRank.append(A[i])
i+=1
else:
while((7)______):
myRank.append(B[j])
j+=1
print(myRank)
算法二:
myRank=[0]*(len(A)+len(B))
i=0
j=0
k=0
while((8)_____):
k=i+j
if(i>=len(A)):
myRank[k]=B[j]
j+=1
elif(j>=len(B)):
myRank[k]=A[i]
i+=1
elif((9)_____):
myRank[k]=A[i]
i+=1
else:
myRank[k]=B[j]
j+=1
print(myRank)
17.程序设计:
唐三藏又被妖怪抓走了,这次孙悟空还是没打得过妖怪,于是来求观音菩萨。
观音菩萨告诉孙悟空,在天庭里身高正好为1000米的那位神仙可以降伏此妖。
于是悟空立刻来到天上,在玉皇大帝的神仙册上看到了按身高从矮到高排列有10000个神仙。
由于时间紧迫,悟空想用最短的时间找到这位神仙,这样才可以尽快解救唐僧。
代码如下:
List=list(map(int,input(“请按身高递增顺序依次输入10000个神仙的身高”).split()))
left=1
right=10000
while①
mid=②
ifList[mid]==1000:
③
elifList[mid]<1000:
④
else:
⑤
print(“能帮孙悟空的神仙在第{0}位上”.format(mid+l))
(1)程序代码中①处正确的代码是(_______)。
A.left<rightB.left<=rightC.left!
=rightD.left>right
(2)程序代码中②处正确的代码是(_______)。
A.(left+right)/2B.(left+right)\2
C.(left+right)//2D.(left+right)\\2
(3)程序代码中③处正确的代码是(_______)。
A.passB.print(mid)zC.breakD.continue
(4)程序代码中④处正确的代码是(_______)。
-
A.left=midB.right=midC.left=mid+1D.right=mid-1
(5)程序代码中⑤处正确的代码是(_______)。
A.left=midB.right=midC.left=mid+1D.right=mid-1
18.程序设计:
在舞会上,男生、女生各自排成一队。
舞会开始时,依次从男队和女队的队头各出一人配成舞伴。
跳完后的两人重新回到队尾。
例如:
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']
foriinrange(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.xB.yC.iD.i+1
(3)程序代码中③处正确的代码是(_______)。
A.xB.yC.iD.i+1
19.分析完善程序
[背景知识]为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。
如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。
(提示:
①所有车牌号中都含有数字,并且车牌号的长度都是6;②以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。
)如:
请根据上述算法描述补全代码
s=input("车牌号s=")
n=6
x=s[n-1:
n]
whilex.isdigit()==False:
①
x=s[n-1:
n]
if②==0:
print(“双号”)
else:
print(“单号”)
(提示:
s[n:
m]的功能:
从字符串s的
下标为n的元素开始,截取到下标为m-1的元素。
例如:
s="12345",s[2:
4]="34"。
s.isdigit):
判断是否为数字。
)
(1)根据题意,程序中空白①处应填写:
______
(2)根据题意,程序中空白②处应填写:
______(填:
A/B/C/D)。
A.int(x)/2==0B.int(x)%2==0C.int(x)%2=0D.int(x)%2!
=0
20.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
**
***
****
21.程序编写
求1+22+32+……+1002的结果
_______________________________
_______________________________
_______________________________
_______________________________
input(“运行完毕,请按回车键退出...”)
【参考答案】***试卷处理标记,请不要删除
一、选择题
1.D
【详解】
本题主要考查Python程序的执行。
列表的索引是从0开始的,故List[3]=9,故段运行后的输出结果是9,故本题选D选项。
解析:
D
【详解】
本题主要考查Python程序的执行。
列表的索引是从0开始的,故List[3]=9,故段运行后的输出结果是9,故本题选D选项。
2.C
【详解】
本题考查的是Python函数。
split()通过指定分隔符对字符串进行切片,无参数即分隔所有,len()方法返回对象(字符、列表、元组等)长度或项目个数,故len(“myname
解析:
C
【详解】
本题考查的是Python函数。
split()通过指定分隔符对字符串进行切片,无参数即分隔所有,len()方法返回对象(字符、列表、元组等)长度或项目个数,故len(“mynameisjames”.split())=4;int函数可以将数字转换为整数,直接取整,不会四舍五入,int(4.99)=4;sum()方法对系列进行求和计算,sum([1,2,1,1])=5;max()方法返回给定参数的最大值,参数可以为序列,max([1,2,3,4])=4。
故应选C。
3.A
【详解】
本题主要考查Python关键字。
关键字from一般用于类的导入,not、or是逻辑运算符,cout不是Python关键字,故本题选A选项。
解析:
A
【详解】
本题主要考查Python关键字。
关键字from一般用于类的导入,not、or是逻辑运算符,cout不是Python关键字,故本题选A选项。
4.D
【详解】
本题主要考查Python中的运算符。
"/"是除法运算,“%”是取余运算,mod是求余函数,“//”是整除运算,因此D选项正确。
【点睛】
解析:
D
【详解】
本题主要考查Python中的运算符。
"/"是除法运算,“%”是取余运算,mod是求余函数,“//”是整除运算,因此D选项正确。
【点睛】
5.A
【详解】
本题主要考查Python表达式的运算。
a=2,b=5,a>b值为False,b>3值为True,逻辑运算符“And”两边都为真,表达式的值才为真,故表达式a>bAndb>3的值是F
解析:
A
【详解】
本题主要考查Python表达式的运算。
a=2,b=5,a>b值为False,b>3值为True,逻辑运算符“And”两边都为真,表达式的值才为真,故表达式a>bAndb>3的值是False,故本题选A选项。
6.A
【详解】
本题主要考查Python程序的执行。
x=2没有发生改变,只是输出x+1、x+2的值,故本题选A选项。
解析:
A
【详解】
本题主要考查Python程序的执行。
x=2没有发生改变,只是输出x+1、x+2的值,故本题选A选项。
7.D
【详解】
本题考查的是应用软件。
应用软件(Application)是和系统软件相对应的,是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。
p
解析:
D
【详解】
本题考查的是应用软件。
应用软件(Application)是和系统软件相对应的,是用户可以使用的各种程序设计语言,以及用各种程序设计语言编制的应用程序的集合,分为应用软件包和用户程序。
python是编程软件,属于系统软件。
故本题应选D。
8.A
【详解】
本题主要考查程序设计语言。
编译型语言:
程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。
Python属于解释性语言,
解析:
A
【详解】
本题主要考查程序设计语言。
编译型语言:
程序在执行之前需要一个专门的编译过程,把程序编译成为机器语言的文件,运行时不需要重新翻译,直接使用编译的结果就行了。
Python属于解释性语言,C++和C属于编译性语言,vb是典型的编译+解释型语言,故本题选A选项。
9.C
【详解】
本题主要考查print函数。
print命令在屏幕中输出相应的文本或者数字等,执行语句print(“python”,3.7)的结果是python3.7,故本题选C选项。
解析:
C
【详解】
本题主要考查print函数。
print命令在屏幕中输出相应的文本或者数字等,执行语句print(“python”,3.7)的结果是python3.7,故本题选C选项。
10.C
【详解】
本题主要考查Python表达式的运算。
字符串乘上整数n,将返回由n个此字符串拼接起来的新字符串,故该表达式的运算结果是abcdcd,故本题选C选项。
解析:
C
【详解】
本题主要考查Python表达式的运算。
字符串乘上整数n,将返回由n个此字符串拼接起来的新字符串,故该表达式的运算结果是abcdcd,故本题选C选项。
11.A
【详解】
本题考查Python程序实现。
变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。
故本题选A选项
解析:
A
【详解】
本题考查Python程序实现。
变量i的范围是从1到4,当i=4时,跳出循环,此时s=0+1+2+3+4=10。
故本题选A选项
12.B
【详解】
本题主要考查Python程序设计语言。
python是一种面向对象的编程语言,python代码可以在交互环境中运行,python具有丰富和强大的库,python是一种解释型的计算机程序设
解析:
B
【详解】
本题主要考查Python程序设计语言。
python是一种面向对象的编程语言,python代码可以在交互环境中运行,python具有丰富和强大的库,python是一种解释型的计算机程序设计高级语言,故本题选B选项。
13.A
【详解】
本题考查的是Python变量名的命名规则。
Python中变量命名规则:
由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。
故本题应选A。
解析:
A
【详解】
本题考查的是Python变量名的命名规则。
Python中变量命名规则:
由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。
故本题应选A。
14.C
【详解】
本题主要考查Python表达式的运算。
“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。
解析:
C
【详解】
本题主要考查Python表达式的运算。
“//”是向下取整,abs是求绝对值函数,-16//5=-4,abs(-16//5)=4,故执行结果是4,故本题选C选项。
15.A
【详解】
本题考查Python数据类型。
Python数据类型有字符串,布尔类型,整数,浮点数等。
a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。
故本题选A。
解析:
A
【详解】
本题考查Python数据类型。
Python数据类型有字符串,布尔类型,整数,浮点数等。
a=5,a为整数型;a=‘5’,则a为字符串;a=5.0,则a为浮点数。
故本题选A。
二、程序填空
16.myRank.append(A[i])j【详解】
本题主要考查python编程。
根据表格所示,列表B中第5个元素为309,因此①处为309;A[i]
【点睛】
17.BCCCD
【详解】
本题主要考查二分查找算法及Python程序实现。
①二分查找的循环条件是left<=right,故选B选项。
②此处是取中间值,需要整除2,故填(left+right)//2 ,故选C选项。
③如果mid对应的列表值是1000,表示已找到,则用break跳出循环,选C选项。
④如果mid对应的列表值小于1000,则需要更新left的值为mid+1继续循环,选C选项。
⑤否则更新right的值为mid-1,选D选项。
18.CAB
【详解】
本题主要考查队列数据结构及Python程序。
①队列是从队头出队,队尾入队,使用pop函数出队,队头的索引值是0,故此处填boy.pop(0),girl.pop(0)。
②队列入队使用append方法追加到队列尾,此处是男生入队boy.append(x),故选A选项。
③同理,此处是女生入队girl.append(y),故选B选项。
19.n=n-1或n-=1B
【详解】
本题主要考查算法及Python程序设计。
①此处是判断x是否为数字,若不是数字,则n递减取前一位字符继续进行判断,故此处填n=n-1或n-=1。
②当while循环结束,表明此时x为数字,若int(x)%2==0,即x为偶数,输出“双号”,否则输出单号,故选B选项。
20.layer=int(input("请输入需要打印的层数:
"))
forxinrange(1,layer+1):
foryinrange(1,x+1):
print("*",end="")
print("")
【详解】
本题主要考查Python循环结构。
Pythonfor循环可以遍历任何序列的项目,如一个列表或者一个字符串。
range可以生成一个整数列表,列表范围根据接收的layer来确定。
外层循环用于确定输出行数,内层循环用于控制每行符号个数。
【点睛】
21.total=0#变量可任选(符合规则)foriinrange(1,101):
total=total+i*i#total=total+i**2print(total)
【详解】
本题主要考查Python程序的编写。
①变量total用来统计最终的计算结果,其初始值为0,故填total=0#变量可任选(符合规则)。
②求1+22+32+……+1002的结果,用for循环结构,变量i的范围是从1到100,故填foriinrange(1,101):
。
③计算语句是total=total+i*i#total=total+i**2。
④最后用print()函数输出计算结果total,故填print(total)。