内容正文:
第三章 算法的程序实现
学校:___________姓名:___________班级:___________考号:___________
一、选择题
1.下列可以作为python变量名的是( )
A.'a1' B.6key
C.False D.i_f
2.以下对 Python 程序缩进格式描述错误的选项是( )
A.不需要缩进的代码顶行写,前面不能留空白
B.缩进可以用 tab 键实现,也可以用多个空格实现
C.严格的缩进可以约束程序结构,可以多层缩进
D.缩进是用来格式美化 Python 程序的
3.回文数是从前往后读和从后往前读都一样的数,例如:123454321为回文数。若将任意一个三位数存储到字符串变量a中,下列语句不能实现回文的是( )
A.new=a+a[2]+a[1]+a[0] B.new=a+a[::-1]
C.new=a+a[-3]+a[-2]+a[-1] D.new=a+a[-1::-1]
4.以下问题,更适合于用程序设计的方式解决的是( )
A.求三元一次方程的正整数解
B.编辑文字
C.家庭装修设计
D.求所有有理数的和
5.Python中,可以将字符串转换成浮点数的函数是( )
A.int() B.float() C.bool() D.class()
6.身体质量指数=体重/身高的平方(国际单位:kg/m2),用变量w(kg)表示体重,h(cm)表示身高,h=180,w=65,下列关于身体质量指数BMI的Python 代码表达式正确的是( )
A.w//((h//100)**2) B.w//(h//100**2) C.w/(h/100)**2 D.w/(h/100**2)
7.在Python语言中,下列逻辑表达式值为True的是( )
A.not(4==4) B.3>4 or 3>2 C.3>4 or 3<2 D.3<4 and 3<2
8.下列属于Python的Web应用框架的是( )
A.Flask B.pandas C.plotly D.numpy
9.不符合Python变量命名规则的是( )
A.6ac B.BsFF C.a123 D.ABCD
10.有如下Python程序段:
dic={1:"2023",2:["杭州亚运会"],3:"心心相融@未来",4:["Heart to Heart","@Future"]}
cnt=0
for i in range(3):
cnt+=len(dic[i+1])
print(cnt)
该程序段运行后,输出的结果是( )
A.16 B.12 C.10 D.3
11.有如下递归函数:
def fun(n):
if n<2:
return str(n)
else:
return fun(n//2)+str(n%2)
调用语句print(fun(13))后,程序输出的结果为( )
A.1 B.3 C.1101 D.1011
12.以下程序代码执行结果是( )
for i in range(4):
for j in range(4):
print("*",end="")
print()
**** * **** *
**** ** *** **
**** *** ** ***
A.**** B.**** C.* D.****
13.以下问题中,不适合利用计算机编程解决的是( )
A.编辑文稿 B.计算1+3+5+7+9
C.求圆柱体的体积 D.计算10×9×8×7
14.有如下Python程序:
import random
a=[0,0,0,0,0,0]
for i in range(6):
a[i]=random.randint(1,10)
for i in range(0,6):
if i%2==0 and a[i]%2==0:
a[i]//=2
else:
a[i]+=1
print(a)
执行程序后,列表a各元素可能是( )
A.1,5,1,11,2,11 B.7,2,8,10,5,9 C.6,9,3,7,8,12 D.3,9,0,8,2,7
15.某列表a=[1,2,3,4,5,6],下列方式中,不能正确获取数字5的是( )
A.a[4] B.a[-2] C.a[4:5] D.a[4:][0]
16.下列程序运行之后,显示的结果为( )
a=abs(-123)
b=456
a,b=b,a
t=a-b
print(t)
A.333 B.-333 C.579 D.-579
17.在python语言中,能实现将整数转为字符串的函数是( )
A.abs() B.int() C.str() D.bool()
18.Python中,可以将字符串转换成浮点数的函数是( )
A.int(string) B.float(string) C.bool(string) D.class(string)
19.下列字符串中,最大的是( )
A."456" B."45" C."54" D."56"
20.python
a=[2,1,3,4,5]
c=0
for i in range(2,len(a)):
if a[i-2] +a[i-1]==a[i]:
c=c+1
print(c)
该程序段运行后,最后输出的内容是( )
A.1 B.2 C.3 D.4
试卷第1页,共3页
试卷第1页,共3页
学科网(北京)股份有限公司
参考答案:
1.D
【详解】本题主要考查Python变量的命名。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。故i_f可以作为python变量名,故本题选D选项。
2.D
【详解】本题主要考查Python语法格式。不需要缩进的代码顶行写,前面不能留空白;缩进可以用 tab 键实现,也可以用多个空格实现;严格的缩进可以约束程序结构,可以多层缩进;缩进是代码书写规则要求,故本题选D选项。
3.C
【详解】本题考查Python基础。
若a="123",a+a[-3]+a[-2]+a[-1]取到的结果是拼接字符变量a和变量a的倒数第三个字符、倒数第二个字符、倒数第一字符。则选项C得到的是new="123123"。故正确答案为:选项C。
4.A
【详解】本题主要考查编程解决问题。结合选项,可知求三元一次方程的正整数解更适合于用程序设计的方式解决,故本题选A选项。
5.B
【详解】本题考查Python函数。int() 函数用于将给定的值转换为整型;float()函数用于将给定的值转换为浮点型;bool()函数用于将给定的值转换为布尔类型。故选:B。
6.C
【详解】本题主要考查Python表达式的运算。“//”是整除运算符,“/”是除运算符,“**”是幂运算符,身体质量指数=体重/身高的平方(国际单位:kg/m2),BMI是浮点型,应使用除运算符,故正确的表达式是w/(h/100)**2,故本题选C选项。
7.B
【详解】本题考查Python运算符与表达式相关内容。A选项,not(4==4)-->not True-->False。B选项,3>4 or 3>2-->False or True-->True。C选项,3>4 or 3<2-->False or False-->False。D选项,3<4 and 3<2-->True and False-->False。故本题答案是B选项。
8.A
【详解】本题考查Python库。pandas是Python的数据分析库,plotly是Python的可视化库,numpy是Python的科学库。故答案为:A。
9.A
【详解】本题考查Python基础。
Python中变量名的命名不能以数字开头,开头必须是字母或下划线。故正确答案为:选项A。
10.B
【详解】本题考查Python程序执行。分析程序,i依次取0、1、2,i+1依次对应1、2、3。for循环实现统计字典dic中键1、2、3对应键值长度之和,dic={1:"2023",2:["杭州亚运会"],3:"心心相融@未来",4:["Heart to Heart","@Future"]},则cnt=0+4+1+7=12。故选B。
11.C
【详解】本题考查Python程序设计相关内容。该递归函数调用过程为:fun(13)=fun(6)+"1",fun(6)=fun(3)+"0",fun(3)=fun(1)+"1",fun(1)="1",将值传递回去之后,fun(13)的值为“1101”,此段程序实现的功能是将十进制数n转换为二进制。故本题答案是C选项。
12.A
【详解】本题主要考查Python嵌套循环。分析程序可知,外层循环共4次,控制4行;内层循环共4次,每次输出“****”,内层循环结束后,执行语句print()换行,执行结果对应选项A,故本题选A选项。
13.A
【详解】本题考查计算机编程解决问题相关内容。BCD选项适合利用计算机编程解决。A选项,编辑文稿使用文字处理软件即可,不需要利用计算机编程解决。故本题答案是A选项。
14.A
【详解】本题考查的是Python循环语句。random.randint(1,10)生成1~10的随机整数。经 a[i]//=2或 a[i]+=1不可能为0、12,故选项C、D不可能;选项A中,a[0]=7,只能由a[i]+=1得到结果(如果由a[i]//=2得到,则初始a[0]=14,超出1~10),故初始a[0]=6,初始a[0]=6满足if条件,应执行a[i]//=2,与执行a[i]+=1矛盾了,故选项B不可能。本题应选A。
15.C
【详解】本题考查列表。列表a中,索引4对应的元素是5,A可以;索引-2对应的元素也是5,B可以;a[4:5]得到的是一个包含元素5的列表切片,而不是数字5本身,C不可以;a[4:]得到列表[5,6],再取其第一个元素就是5,D可以。所以答案是C。
16.A
【详解】本题主要考查Python程序的执行。a=123,b=456,交换a、b的值,a=456,b=123,t=a-b=456-123=333,故本题选A选项。
17.C
【详解】本题考查的是Python函数。abs()返回数字的绝对值,int()用于将一个字符串或数字转换为整型,str()转为字符串,bool() 函数用于将给定参数转换为布尔类型,故本题应选C。
18.B
【详解】本题考查Python程序设计相关内容。A选项,int(string)将字符串转换为整数。B选项,float(string)将字符串转换为浮点数。C选项,bool(string)将字符串转换为布尔类型。D选项,在Python中,class是一种用户自定义的类。定义好类(class)后,可以将类进行对象属性的实例化,即通过类生成了对象。故本题答案是B选项。
19.D
【详解】本题考查的是字符串比较。字符串大小比较规则是:两个字符串自左向右逐个字符相比(按ASCII值大小相比较)。"56">"54">"456">"45"。故选D。
20.B
【详解】本题主要考查Python程序的执行。分析程序可知,若前两项的和等于第三项,则变量c递增,a[0]+a[1]=a[2],a[1]+a[2]=a[3],故该程序段运行后,最后输出的内容是2,故本题选B选项。
答案第1页,共2页
答案第1页,共2页
学科网(北京)股份有限公司
$$