内容正文:
一.选择题(共27小题)
1.有如下 python 程序段:
from random import*
s=''
for i in range(1,4):
k=int(random( )*3+1)
c=chr(96+k)
if i%2==k%2:
s=s+c
else:
s=c+s
print(s)
若该段程序执行以后,s 的值不可能的是( )
A.'abc' B.'bbc' C.'aab' D.'caa'
2.有如下python程序段:(注:字母ASCII码>数字ASCII码,小写字母ASCII码>大写字母ASCII码)
import random
s=“olympicGames2021“;ans=““;i=0
while i<len(s)﹣2:
t=int(random.random( )*2)+1
x=s[i];y=s[i+t]
if x>y:
ans+=x
else:
ans+=y
i=i+t+1
print(ans)
执行程序后,输出结果可能为( )
A.oyies B.ymcms2 C.oypcms2 D.ypces1
3.有如下Python程序段:
s=“ABCDEF“
ch=““
for i in range(0,len(s)):
a=int(input( ));b=(a+2)%6
ch=ch+chr(ord(s[b])+32)
print(ch)
运行程序后,依次输入3、1、4、5、2、6,输出ch的值是( )
A.cadebf B.fdabec C.aabbab D.ecfadb
4.有如下Python程序段:
s=input(“请输入一串字符串:”)
m=cnt=1
for i in range(1,len(s)):
if s[i]>s[i﹣1]:
cnt+=1
if cnt>m:
m=cnt
else:
cnt=1
print(m)
该程序段的功能是( )
A.输出字符串s中最大的字符的索引
B.输出字符串s中最大的字符
C.输出字符串s中最长的递增序列
D.输出字符串s中最长的递增序列长度
5.有如下Python程序段:
s=input(“请输入一串字符串:”)
f=True
for i in range(0,len(s)//2):
if s[i]!=s[len(s)﹣i﹣1]:
f=False
break
print(f)
若执行该程序后,输出的结果是“True”,那么输入的值可能是( )
A.onion B.hello C.278 D.111
6.一个栈的入栈序列为1,2,3,4,5,则其出栈序列不可能为( )
A.1,2,3,4,5 B.4,5,3,2,1 C.4,3,5,1,2 D.3,2,1,5,4
7.一个栈的输入序列为“12345“,输出的第一个元素为“4“,则输出的第3个元素不可能的是( )
A.1 B.2 C.3 D.5
8.某Python程序如下:
s=“xyAB#Fk”;k=x=“”;flag=True
for i in range(len(s)):
If“a”<=s[i]<=“z”and flag:
x=chr(((ord(s[i])﹣95))%26+97)#字符“a”的ASCⅡ码值为97
elif“A”<=s[i]<=“Z”and flag:
x=chr>(((Cord(s[i])﹣41))%26+65)#字符“A”的 ASCⅡ码值为65
flag=False
else:
x=s[i];flag=True
k=k+x
print(k)
执行该程序后,输出值为( )
A.ZAyb#dK B.yzYZ#Dm C.zaYB#Dk D.zaYZ#Dm
9.创建一个容量为3的队列,元素2,3,5,1,3,5,2依次等待入队。入队规则为:
①若当前待入队元素已经在队列中,则跳过该元素,否则转②
②若当前队列已满,将队首元素出队列,否则转③
③将当前待入队元素入队列
操作完成后,队列中的元素为( )
A.2,3,5,1 B.1,2,3,5 C.2,3,5 D.5,1,2
10.已知一个栈的入栈序列是a,c,e,h,r,t,e,其出栈序列可能的是( )
A.c,h,c,a,t,e,r B.h,e,c,t,a,r,e
C.t,e,a,c,h,e,r D.r,e,t,e,a,c,h
11.一个栈的入栈序列为“6、9、5、7、8、3”,其出栈序列不可能是( )
A.3、8、7、5、9、6 B.7、5、9、8、6、3
C.6、5、7、9、3、8 D.5、9、6、3、7、8
12.一个栈的入栈序列为1,2,3,4,5,其出栈序列为sl,s2,s3,s4,s5。若s2是3,则s1不可能是( )
A.1 B.2 C.4 D.5
13.在某餐厅点餐系统中,利用队列来