内容正文:
2.3 程序设计基本知识
一、选择题
1.在Python语言中,使用三角函数进行科学计算时需要导入的模块是( )
A.pygame B.tkinter C.numpy D.matplotlib
2.数组a[0]至a[n-1]依次存放着n个数据,现需要删除数组中第x个元素(第1个元素为a[0])。实现该功能的程序段如下,方框中应填入的正确代码为( )
for i in range(x - 1, n - 1, 1):
n = n - 1
A.a[i] = a[i + 1] B.a[i + 1] = a[i] C.a[i] = a[i - 1] D.a[i - 1] = a[i]
3.在Python语言中,运行以下程序段后,显示的结果是( )
A.0 B.10 C.2 D.5
4.以下Python表达式的值最大的是( )
A.len("a s h") B.int("123456789"[6:7]) C.13 // 2 % 10 D.abs(ord('A') - ord('G'))
5.某加密程序的代码如下:
def encrypt(code, key) :
code_new = '' ''
for i in range(len(code)):
code_new = code[(i+key)%len(code)] + code_new
return code_new
code = input('请输入加密字符串:')
key = int(input('请输入偏移位数:'))
print(encrypt(code,key))
当输入“Python”和“3”后,程序输出的结果是( )
A.mvqelk B.sbwkrq C.honPyt D.tyPnoh
6.利用Python程序绘制函数y=sin(x)的图像,若要绘制下图所示的函数图像,则下列代码中第六行应该填写的代码为( )
A.plt.plot(x,y) B.plt.plot(y,x) C.plt.bar(x,y) D.plt.boxplot(x,y)
7.4的立方使用python语言怎么表示( )
A.4*3 B.4**3 C.43 D. 4**2
8.有如下Python程序代码:
import pandas as pd
data={'姓名':['张立','王强','朱明','李华'],'物理':[90,66, 80,78], '化学':[92,86,75,80]}
df1=pd.DataFrame(data,columns=['姓名','物理','化学'])
df1.化学 = [94,88,83,86]
ans =df1.化学.max()-df1.化学.min()
print(ans)
该程序运行后,输出的内容为( )
A.2 B.11 C.17 D.19
9.s=["3","13","23","19","123"],则表达式max(s)+min(s)的值为( )
A.126 B."126" C."3123" D."1233"
10.在Python语言中,运行以下代码,运行结果是( )
a= 32
b= 14
c=a//b
print(c)
A.2.2 B.2 C.“2” D.4
11.若字符串s的值为"3a2bcl",执行如下Python程序段后,输出变量str的值为( )
m,str,tmp=0,"",""
flag = False
for ch in s:
if '0' <= ch <= '9':
if flag=True:
str =str + tmp * m
m,tmp=0,""
flag = False
m=m * 10+ int(ch)
else:
tmp=tmp + ch
flag = True
str =str + tmp* m
print(str)
A.aaa B.aabc C.aaabcbc D.aaabcbcl
12.在Python中,如果sl=“我爱我的祖国”,那么print(s1[3])的运行结果是( )
A.我 B.爱 C.的 D.国
13.已知某同学的BMI值存储在变量X中,小蓝编写程序判断该同学的身体状况信息,并保存到变量Y中,则下列程序段无法实现该功能的是( )
A.
Y = "偏瘦"
if X>=18:
Y = "正常"
elif X>24:
Y = "偏胖"
B.
Y="偏胖"
if X<18:
Y = "偏瘦"
elif X<=24:
Y = "正常"
C.
if X>24:
Y = "偏胖"
elif X>=18:
Y = "正常"
else:
Y = "偏瘦"
D.
if 18<=X<=24:
Y = "正常"
else:
Y = "偏瘦"
if X>18:
Y = "偏胖"
A.A B.B C.C D.D
14.Python表达式int(-2**2-9/5)的值是( )
A.2 B.3 C.-5 D.-6
15.程序设计代码中的注释语句可以用来( )
A.解释程序的功能 B.执行程序的语句 C.参与算术运算 D.参与逻辑运算
16.有如下Python程序段:
import random
q=[0]*8;head,tail=0,4
for i in range(4):
k=random.randint(0,10)
if k%2==0:
q[tail]=k%5
tail+=1
else:
head+=1
while head<tail:
print(q[head],end="")
head+=1
程序执行后,输出的结果可能为:( )
A.0 0 0 0 2 3 0 9 B.0 0 0 0 C.0 1 2 3 4 D.2 3
二、填空题
17.Python中用于表示逻辑与的关键词为 ,逻辑或的关键词为 。
18.根据要求,写出相应的代码:
(1)创建一个列表List1,列表中的元素为:1,3,5,7。
(2)在列表中最后添加元素9。
(3)取出列表中3,5,7元素。
19.下面是用Python实现交换两个变量a、b值的缺省代码,请补充完整。
a,b=1,2
(注:可以一行或者多行实现)
print(a,b)
20.写出下列表达式的值
(1) “20”+str(15) =
(2) Len(“-100”)+100 =
(3) 103\10/5 mod 10=
(4) Not (1>2) and (5<3)=
21.现有字符串name='Tommy',在Python中运行print(name[1]),得到的结果是( )。
三、判断题
22.已知x = 3,那么执行语句x+=6之后,x的内存地址不变。( )
23.在Python语言中,表达式x=2.4/8+10%3执行后, 用print语句输出,则屏幕显示的结果是1.3。
24.在使用Python语言编写程序时,注释不会影响程序结果,所以没有必要写。( )
25.常见的顺序结构语句有输入语句、输出语句和赋值语句。( )
四、操作题
26.某商场举办“猜价格送商品”的酬宾活动。规则如下:顾客选择喜欢的商品,每人有5次猜价格的机会,如果猜中,显示“恭喜你,猜中了!”,免费赠送顾客此款商品,游戏结束;如果猜错,显示“猜多了!”或“猜少了!”,顾客继续猜价格,如果5次均未猜中,界面显示“很遗憾,5次机会已用完!”,游戏结束。流程图表达如下:
price =500
for i in range (1, ):
guess = int (input ("请入商品价格: "))
if guess == price:
print ("恭喜你,猜中了!")
break #跳出当前循环,执行循环外的下一条语句
elif guess> price:
print("猜多了! ")
else:
print("猜少了! ")
if i==5:
print("很遗憾, 5次机会已用完!")
请根据流程图补全程序代码。
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.C
【详解】本题考查Python基础。
在Python语言中,使用三角函数进行科学计算,需要导入numpy库。
pygame:游戏开发库。
tkinter:Python的标准GUI(图形用户界面)库。
matplotlib:数据可视化库。
故正确答案为:选项C。
2.A
【详解】本题考查Python程序设计相关内容。若要删除数组中第x个元素,则应将第x+1个元素及其后面的元素依次往前移动一个位置。由于第1个元素为a[0],则第x个元素下标为x-1,代码段中,i从x-1开始,则应将其及后面元素依次前移,即执行a[i] = a[i+1]操作可以实现题目要求。故本题答案是A选项。
3.C
【详解】本题主要考查Python程序的执行。a=5,b=10,语句a,b=b,a实现交换a、b的值,故a//b=10//5=2,故显示的结果是2,故本题选C选项。
4.B
【详解】本题主要考查Python表达式的运算。len("a s h")=3,int("123456789"[6:7])=7,13 // 2 % 10=6%10=6,abs(ord('A') - ord('G'))=6,故本题选B选项。
5.D
【详解】本题主要考查Python程序的执行。列表索引从0开始,每次通过计算,取code索引为(i+k)%len(code)的值,之后再将该字符逆序拼接到字符串code_new中,如第一次循环,i=0,计算得到code_new="h"+code_new="h",其他依次类推,可以得到程序输出的结果是tyPnoh,故本题选D选项。
6.A
【详解】本题主要考查Python图像的绘制。plot函数用于绘制曲线,bar函数用于绘制柱形图,boxplot用于绘制箱型图,x、y分别是横纵坐标,故第六行应该填写的代码为plt.plot(x,y),故本题选A选项。
7.B
【详解】本题考查的是Python算术符号。*表示乘,**表示幂乘。4的立方使用python语言为:4**3。故本题应选B。
8.B
【详解】本题主要考查Python程序执行。分析程序可知,df1.化学 = [94,88,83,86]该语句是将化学列的数据替换为 [94,88,83,86],变量ans是求化学列最大值与最小值的差,即ans=94-83=11,故本题选B选项。
9.C
【详解】本题考查的列表中元素的计算。列表中的字符串大小排列规则:先比较每个字符串最左的第一位,找出最大的是第一个字符串"3",第二大的是"23", "13" ,"19","123"三个字符串的第一位是一样的,所以依次比较第二位、第三位。故字符串的大小顺序是"3","23","19","13","123"。故max(s)+min(s)="3123",选项C正确。
10.B
【详解】本题考查的是Python顺序结构及运算符。//表示整除。a=32,b=14,c=a//b=32//14=2,print(c)输出c的值:2。故本题应选B。
11.C
【详解】本题考查Python程序调试与执行。分析程序可知,该程序实现对字符串的解密操作,将连续的字符重复输出n次,n为该连续字符前面的数字,若字符串s的值为"3a2bcl",则将a输出3次,bc输出2次,即输出变量str的值为aaabcbc。故选C。
12.C
【详解】本题考查的是Python字符串。字符串索引下标是从左到右开始是从0开始,故print(s1[3])的运行结果是“的”。故本题应选C。
13.A
【详解】本题考查的是Python分支语句。代入特殊的值,可以快速判断是否能实现算法要求的功能。
A选项,当x=25时,if x>18条件成立,elif不会被执行,会得到Y是正常,不符合要求。
B选项,把x=16,20,25,分别代入,会得到偏瘦,正常,偏胖的正确结果,正确。
C、D选项,同样把x=16,20,25,都能得到正确结果。综上,答案为A。
14.C
【详解】本题考查Python表达式。首先,按照运算符的优先级,先计算指数运算,然后进行减法和除法运算:计算 -2**2,得到 -4。计算 9/5,得到 1.8。最后,计算 -4 - 1.8,得到 -5.8。然后,int() 函数将结果转为整数,即取整数部分,得到 -5。故答案为:C。
15.A
【详解】本题主要考查程序注释语句的描述。注释语句是对程序代码的解释和说明,在运行程序时不会被执行,故本题应选A。
16.B
【详解】本题考查Python程序的分析。k=random. randint (0, 10),k随机生成0~10, 由q[tail]=k%5可知,q列表中不可能出现9,排除A选项;for循环一共循环4次,若q中有1、2、3、4,说明没有执行head+=1,则C应是00001234,排除C选项;如果k是连续生成0或10两个再生成两个奇数,选项B可能;选项D有2、3,则说明head+=1至多执行2次,因此输出结果一定有0,排除D选项。故正确答案选B。
17. and or
【详解】本题主要考查Python逻辑连接词。Python中用于表示逻辑与的关键词为and,逻辑或的关键词为or。
18. List1=[1,3,5,7] List1= List1+[9] List1[1:4]
【详解】本题主要考查Python列表数据类型。①创建一个列表List1,列表中的元素为:1,3,5,7,代码为List1=[1,3,5,7]。②在列表中最后添加元素9,代码为List1= List1+[9]。③列表中3,5,7元素是索引1~3,故取出列表中3,5,7元素代码是List1[1:4]。
19.a,b=b,a 或
【详解】本题主要考查Python程序调试。分析程序可知交换两个变量a、b值可以使用语句a,b=b,a实现,或者引入变量c实现交换,代码是 。
20. “2015” 103 1 False
【详解】本题主要考查表达式求值。(1) 为字符串运算;(2) Len函数计算字符串长度;(3)"\"是整除运算,mod是取余运算,算术运算优先级由高到低分别为:-(取负)、^(平方)、*或/、\、Mod、+或-;(4)逻辑运算符优先级由高到低 Not And Or Xor Eqv Imp。
【点睛】
21.o
【详解】本题考查的是Python数据类型。Python中字符串类型数据索引从0开始,故name='Tommy',print(name[1])输出的字符为o。
22.错误
【详解】本题考查Python基础。在Python中,变量(如x)实际上是对对象的引用(或指针),而不是对象本身。当你执行x = 3时,x是对整数对象3的引用。整数对象在Python中是不可变的(immutable),这意味着一旦创建,其值就不能改变。然而,当你执行x += 6时,这实际上是一个简写形式,等同于x = x + 6。在这个操作中,x + 6首先会计算出一个新的整数对象(在这个例子中是9),然后x这个变量名会被重新绑定到这个新的整数对象上,这时地址会发生变化。故错误。
23.正确
【详解】本题考查的是Python表达式。在Python中:/表示除,%表示求余。2.4/8+10%3=1.3。题干中的说法正确。
24.错误
【详解】本题主要考查Python注释语句。在Python程序中,注释语句可以增强程序的可读性,写注释非常有必要。题干说法错误。
25.正确
【详解】本题考查的是顺序结构。常见的顺序结构语句有输入语句、输出语句和赋值语句。本题说法正确。
26.6
【详解】本题考查流程图以及Python程序。第2行是一个for语句计数循环。从题干知,猜价格应该有五次机会,所以此处应该循环5次。for i in range(1,6)循环五次,i分别是1,2,3,4,5。故答案为:6。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$