Python期末试题A 精品word练习.docx

上传人:b****4 文档编号:24470496 上传时间:2023-05-27 格式:DOCX 页数:27 大小:917.31KB
下载 相关 举报
Python期末试题A 精品word练习.docx_第1页
第1页 / 共27页
Python期末试题A 精品word练习.docx_第2页
第2页 / 共27页
Python期末试题A 精品word练习.docx_第3页
第3页 / 共27页
Python期末试题A 精品word练习.docx_第4页
第4页 / 共27页
Python期末试题A 精品word练习.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

Python期末试题A 精品word练习.docx

《Python期末试题A 精品word练习.docx》由会员分享,可在线阅读,更多相关《Python期末试题A 精品word练习.docx(27页珍藏版)》请在冰豆网上搜索。

Python期末试题A 精品word练习.docx

Python期末试题A精品word练习

Python期末试题A精品word练习

一、选择题

1.下列定义变量的python程序语句变量赋值错误的是()

A.x=y=1B.x,y=1,2C.x==1D.x=1,2

2.在python语言中,下列表达式中不是关系表达式()

A.m==nB.m>=nC.mornD.m!

=n

3.在Python中,表达式2**3的结果是()

A.5B.8C.6D.3

4.在Python中,返回x的绝对值的函数是()。

A.abs(x)B.bin(x)C.all(x)D.input(x)

5.下列Python语句中,会导致程序运行出错的语句是()

A.x=(y=1)B.x,y=y,xC.x=1;y=1D.x=y=1

6.运行如下Python程序,结果为()。

A.1B.3C.6D.18

7.关于Python3.8基础知识的说法中,不正确的是()

A.支持中文做标识符

B.Python标识符不区分字母的大小写

C.Python命令提示符是>>>

D.命令中用到的标点符号只能是英文字符

8.根据Python中变量命名遵循的规则,正确的是()

A.char21B.2020PyC.PythonD.name.ch

9.如下Python程序段

foriinrange(1,4):

forjinrange(0,3):

print("Python")

语句print("Python")的执行次数是()

A.3B.4C.6D.9

10.在Python中,显示出信息x,并要求输入数据的是()。

A.abs(x)B.float(x)C.print(x)D.input(x)

11.下列Python表达式中,能正确表示不等式方程|x|>1解的是()

A.x>1orx<-1B.x>-1orx<1C.x>1andx<-1D.x>-1andx<1

12.以下Python程序段执行后,输出结果为()。

A.m不能被3整除B.29不能被3整除C.29能被3整除D.m能被3整除

13.以下python程序段运行后,x和st的值分别是()

x= 123 + 678

st = "123" + "678"

A.123678"123678"B.123678"801"C.801"123678"D.801"801"

14.下面不是python特性的是():

A.免费的B.简单易学C.可移植性好D.是低级语言

15.下列Python表达式的值为偶数的是()

A.12*3%5B.len(“Welcome”)

C.int(3.9)D.abs(-8)

16.Python的关系运算符中,用来表示不等于的符号是()

A.==B.!

=C.>=D.<=

17.在PythonIDLE编辑器中书写正确的表达式()

A.b**2-4acB.1/2gt2C.pi*r^2D.2*pi*r

18.检测输入的四位整数abcd是否满足下述关系:

(ab+cd)(ab+cd)=abcd。

实现上述功能的python程序代码如下:

k=int(input(“输入一个四位数:

”))

y=k%100

if②:

print(“符合”)

else:

print(“不符合”)

划线处应填入的代码是()

A.①x=k/100②(x+y)*2!

=kB.①x=k//100②(x+y)*2==k

C.①x=k/100②(x+y)**2!

=kD.①x=k//100②(x+y)**2==k

19.整型变量x中存放了一个两位数,要将这个两位数的个位数字和十位数字交换位置,例如,13变成31,正确的Python表达式是()

A.(x%10)*10+x//10B.(x%10)//10+x//10

C.(x/10)%10+x//10D.(x%10)*10+x%10

20.Python语句中以r或R开头的字符串表示原始字符串,则print(r"\nGood")的运行结果是()

A.新行和字符串GoodB.r"\nGood"C.\nGoodD.字符r、新行和字符串Good

21.我们在用Python进行数据分析的时候,经常会用到pandas库中的DataFrame,这是类似于()的数据结构()

A.一维表格B.二维表格C.三维表格D.四维表格

22.Python中变量的命名遵循的规则,不正确的是()

A.以字母或下划线开头,后面可以是字母、数字或下划线。

B.区分大小写

C.以数字开头,后面可以是字母、数字或下划线。

D.不能使用保留字

23.在Python程序中,要求s=3+6+9+…+300的值,可以采用如下代码,下列选项中的说法不正确的是()。

A.for循环语句中步长为3B.语句s=0应改为s=1

C.语句s=s+i共循环执行了100次D.程序使用了循环结构

24.解释性语言是指源代码不要求预先进行编译,在运行时才进行解释再运行,以下哪一种程序设计语言属于解释性语言(

)。

A.PythonB.C++C.VBD.C

25.下列与数学表达式

对应的python表达式,正确的是(   )。

A.(-b+math.sqrt(b*b–4*a*c))/a*a

B.-b+math.sqrt(b*b–4*a*c)/2*a

C.(-b+math.sqrt(b*2–4*a*c))/(2*a)

D.(-b+math.sqrt(b*b–4*a*c))/(2*a)

26.在PythonShell环境下,依次执行下列语句后,显示结果()。

data=[172,9,165,29,156,21]

max(data)

A.9B.165C.172D.21

27.下面Python代码运行后,a、b的值为()

a=23

b=int(a/10)

a=(a-b*10)*10

b=a+b

print(a,b)

A.232B.3020C.3032D.32

28.已知列表list1=[8,22,34,9,7],则python表达式len(list1)+min(list1)的值为()

A.5B.34C.7D.12

29.在Python中,设a=2,b=3,表达式a>bandb>=3的值是()

A.1B.-1C.TrueD.False

30.为了提高程序的可读性,可以在该语句后面添加注释语句,Python程序中用作注释的标识符是()

A.:

B.#C.,D.!

二、程序填空

31.编写程序。

如图所示的算法,请用Python程序写出实现该算法相应的代码。

32.小王编写了“字符串缩写”程序,实现如下功能:

1.输入一串由英文字母和数字组成的字符串,

2.如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“—”和最后一个字符组成的新字符段,

3.例如:

字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。

程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:

实现上述功能的程序如下,请在程序划线处填入合适的代码。

s=input("请输入字符串s:

")

_______

flag=False

result=""

foriinrange(0,k-1):

if___________________:

result=result+s[i]+"-"

flag=True

eliford(s[i])!

=ord(s[i+1])-1:

result=result+s[i]

_____

result=result+s[i+1]

print("缩写后的字符串为:

",result)

划线处①处应该填入的语句为:

划线处②处应该填入的语句为:

划线处③处应该填入的语句为:

33.(最大公约数)用辗转相除法求两个正整数的最大公约数。

代码如下:

defgcd(m,n):

r=

whiler!

=0:

m=n

n=

return

a=int(input(‘请输入a的值:

’))

b=int(input(‘请输入b的值:

’))

print(‘最大公约数是:

')

填空:

________________________________________

34.操作说明:

打开文件“Y:

/1/1.py”,将程序补充完整,不得增加,删除语句、或改变程序原有结构,操作结束后保存。

以下程序段的功能是:

根据从键盘上输入的表示星期几的数字,若输入的数字不是在范围(1至7)输出“输入错误!

”,否则输出对应的英文星期的简称如“Mon、Tue、Wed、Thu、Fri、Sta、Sun”。

n=int(input(“请输入一个数:

”))

list=[“Mon”,”Tue”,”Wed”,”Thu”,”Fri”,”Sta”,”Sun”]

if________:

print(“输入错误!

”)

else:

print(________)

35.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)

36.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程序”,

请输入以下代码,自己输入数据运行,结果截图提交

37.约瑟夫问题是个有名的问题:

N个人围成一圈,顺序为0,1,2,3,4,5,从0号这个人开始报数,报到2的将被杀掉,接下去重新开始报数,报到3的将被杀掉...以此类推,最后剩下一个,其余人都将被杀掉。

例如N=6,被杀掉的顺序是:

1,4,3,0,5;最后只剩下2这个人。

llist=

n=int(input(“请输入参与人数:

”))

foriinrange(0,n-1):

llist.append([i,i+1])

___________

___________

long=n

k=head

i=1

p=2

while(____):

ifi==p-1:

t=llist[k][1]

print(llist[t][0])#索引为t的删除

__________________

ift==head:

___________________

i=1

p+=1

long=long-1

k=llist[k][1]

______________

i+=1

print(llist[head][0])

38.调试程序。

请阅读以下程序并写出运行结果。

fruites=['banana','apple','mango']

forfruitinfruites:

print(fruit)

a=len(fruites)

print('a=',a)

_________________

39.将下列程序代码补充完整:

某同学参加了学校体检,体检的医生告诉他体重超重,需要加强运动。

该同学了解到运动时,心率如能控制在一定范围内,对增强心血管系统和呼吸系统的功能都有很好的效果;超出范围,对身体反而会有损伤。

男最适宜运动心率=(220-年龄数-安静心率)×(60%~80%)+安静心率,女最适宜运动心率=(210-年龄数-安静心率)×(60%~80%)+安静心率,补充程序帮他(她)计算最适宜的运动心率。

age=float(input('请输入age='))

HRrest=float(input('请输入HRrest='))

gender=input(“请输入maleorfemale:

”)

if____________________:

____________________

else:

_____________________

low=(n-age-HRrest)*0.6+HRrest

high=(n-age-HRrest)*0.8+HRrest

print('最适宜的心率是:

',low,'~',high)

input(“运行完毕,请按回车键退出...”)

40.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。

其内容是:

公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?

(1)请在空格处填写正确的代码,使程序完善实现以下功能。

money=100#一共100文钱

num=100#一共100只鸡

cock_price=5#公鸡价格5文

hen_price=3#母鸡价格3文

threechick_price=1#3只小鸡1文

forcock_numinrange(1,_______):

#公鸡只数可能为1-20

forhen_numinrange(1,_________):

#母鸡只数可能为1-33

forchick_numinrange(1,101):

#(3小鸡)只数可能为1-100

money1=cock_num*cock_price+hen_num*hen_price+chick_num/threechick_price

num1=cock_num+hen_num+chick_num

ifmoney1==moneyandnum1==num:

print(cock_num,hen_num,__________)

input("运行完毕,请按回车键退出...")

(2)运行程序,运行结果如图所示。

【参考答案】***试卷处理标记,请不要删除

 

一、选择题

1.C

【详解】

本题主要考查Python赋值语句。

x==1是条件判断语句(判断x是否等于1);选项A结果是x=1,y=1;选项B结果是x=1,y=2;选项D结果是x=(1,2),故本题选C选项。

解析:

C

【详解】

本题主要考查Python赋值语句。

x==1是条件判断语句(判断x是否等于1);选项A结果是x=1,y=1;选项B结果是x=1,y=2;选项D结果是x=(1,2),故本题选C选项。

2.C

【详解】

本题主要考查python的表达式。

or属于逻辑运算符,morn不是关系表达式。

故本题选C选项。

解析:

C

【详解】

本题主要考查python的表达式。

or属于逻辑运算符,morn不是关系表达式。

故本题选C选项。

3.B

【详解】

本题主要考查Python基本运算符。

“**”是幂运算,x**y为返回x的y次幂,因此B选项正确。

【点睛】

解析:

B

【详解】

本题主要考查Python基本运算符。

“**”是幂运算,x**y为返回x的y次幂,因此B选项正确。

【点睛】

4.A

【详解】

本题主要考查Python标准函数。

在Python中,返回x的绝对值的函数是abs(x),bin()返回一个整数或者长整数的二进制表示,all()函数用于判断给定的可迭代参数中的所有

解析:

A

【详解】

本题主要考查Python标准函数。

在Python中,返回x的绝对值的函数是abs(x),bin()返回一个整数或者长整数的二进制表示,all()函数用于判断给定的可迭代参数中的所有元素是否都为TRUE,input(x)是输入函数,故本题选A选项。

5.A

【详解】

本题考查的是Python赋值语句。

赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。

解析:

A

【详解】

本题考查的是Python赋值语句。

赋值号“=”的左边是变量,右边是常量或表达式,选项A中y=1是赋值语句不是表示,故选项A会报错。

6.C

【详解】

本题主要考查Python循环结构。

分析程序可知,该程序求m、n的最大公约数,程序结束后m=6,此时r=0,故本题选C选项。

解析:

C

【详解】

本题主要考查Python循环结构。

分析程序可知,该程序求m、n的最大公约数,程序结束后m=6,此时r=0,故本题选C选项。

7.B

【详解】

本题主要考查Python语法。

Python3.8支持中文做标识符,Python标识符区分字母的大小写,Python命令提示符是>>>,命令中用到的标点符号只能是英文字符,故本题选B选项

解析:

B

【详解】

本题主要考查Python语法。

Python3.8支持中文做标识符,Python标识符区分字母的大小写,Python命令提示符是>>>,命令中用到的标点符号只能是英文字符,故本题选B选项。

8.A

【详解】

本题考查的是Python变量名的命名规则。

Python中变量命名规则:

由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。

故本题应选A。

解析:

A

【详解】

本题考查的是Python变量名的命名规则。

Python中变量命名规则:

由字母、数字、下划线组成,不能以数字开头,系统保留字不能作为变量名。

故本题应选A。

9.D

【详解】

本题主要考查Python程序的执行。

外循环变量i的范围是1-3,内循环变量j的范围是0-2,故语句print("Python")的执行次数是3*3=9,故本题选D选项。

解析:

D

【详解】

本题主要考查Python程序的执行。

外循环变量i的范围是1-3,内循环变量j的范围是0-2,故语句print("Python")的执行次数是3*3=9,故本题选D选项。

10.D

【详解】

本题主要考查Python常用函数。

abs(x)是返回x的绝对值,float()函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。

解析:

D

【详解】

本题主要考查Python常用函数。

abs(x)是返回x的绝对值,float()函数用于将整数和字符串转换成浮点数,print()是输出函数,input()是输入函数,故本题选D选项。

11.A

【详解】

本题主要考查Python表达式。

题干不等式方程可以写成x<-1或者x>1,用Python表示是x>1orx<-1,故本题选A选项。

解析:

A

【详解】

本题主要考查Python表达式。

题干不等式方程可以写成x<-1或者x>1,用Python表示是x>1orx<-1,故本题选A选项。

12.B

【详解】

本题考查的是Python选择语句。

print是输出语句,%是求余,!

=是不等于,29%3=2,条件不成立,则执行输出29不能被3整除。

故本题应选B。

解析:

B

【详解】

本题考查的是Python选择语句。

print是输出语句,%是求余,!

=是不等于,29%3=2,条件不成立,则执行输出29不能被3整除。

故本题应选B。

13.C

【详解】

本题主要考查Python程序的执行。

x=123+678=801,st="123"+"678"="123678"(字符串类型相加等于字符串的拼接),故本题选C选项。

解析:

C

【详解】

本题主要考查Python程序的执行。

x=123+678=801,st="123"+"678"="123678"(字符串类型相加等于字符串的拼接),故本题选C选项。

14.D

【详解】

本题主要考查Python的特性。

Python特性有:

免费的、简单易学、可移植性好、是高级语言,故本题选D选项。

解析:

D

【详解】

本题主要考查Python的特性。

Python特性有:

免费的、简单易学、可移植性好、是高级语言,故本题选D选项。

15.D

【详解】

本题主要考查Python表达式。

12*3%5=1,len(“Welcome”)=7,int(3.9)=3,abs(-8)=8,故本题选D选项。

解析:

D

【详解】

本题主要考查Python表达式。

12*3%5=1,len(“Welcome”)=7,int(3.9)=3,abs(-8)=8,故本题选D选项。

16.B

【详解】

本题主要考查Python关系运算符。

用来表示不等于的符号是“!

=”,“==”表示等于,“>=”表示大于等于,“<=”表示小于等于,故本题选B选项。

解析:

B

【详解】

本题主要考查Python关系运算符。

用来表示不等于的符号是“!

=”,“==”表示等于,“>=”表示大于等于,“<=”表示小于等于,故本题选B选项。

17.D

【详解】

本题主要考查Python表达式知识点。

书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t*

解析:

D

【详解】

本题主要考查Python表达式知识点。

书写表达式时运算符号不能省略,+加、-减、*乘、**幂、/除、//整除、%取模,A、B、C正确的表达式分别是b**2-4*a*c,1/2*g*t**2,pi*r**2,2*pi*r是正确的表达式,故本题选D选项。

18.D

【详解】

本题主要考查Python程序的调试。

检测是否满足关系(ab+cd)(ab+cd)=a,需要将ab与cd取出来,ab=abcd//100,cd=abcd%100,故第一空填x=k/

解析:

D

【详解】

本题主要考查Python程序的调试。

检测是否满足关系(ab+cd)(ab+cd)=a,需要将ab与cd取出来,ab=abcd//100,cd=abcd%100,故第一空填x=k//100,第二空判断是否满足(ab+cd)(ab+cd)=a,故第二空填(x+y)**2==k,故本题选D选项。

19.A

【详解】

本题主要考查Python表达式。

当x=13时,(x%10)*10+x//10=31,(x%10)//10+x//10=1,(x/10)%10+x//10=2,(x%10)*10+x%1

解析:

A

【详解】

本题主要考查Python表达式。

当x=13时,(x%10)*10+x//10=31,(x%10)//10+x//10=1,(x/10)%10+x//10=2,(x%10)*10+x%10=33,故本题选A选项。

20.C

【详解】

本题主要考查Python输出语句。

“\n”表示换行,以r或R开头的字符串表示原始字符串,故print(r"\nGood")的运行结果是\nGood,故本题选C选项。

解析:

C

【详解】

本题主要考查Python输出语句。

“\n”表示换行,以r或R开头的字符串表示原始字符串,故print(r"\nGood")的运行结果是\nGood,故本题选C选项。

21.B

【详解】

本题考查的是pandas库。

pandas库中的DataFrame是一个二维的、大小可变的、成分混合的、具有标签化坐标轴(行和列)的表数据结构。

DataFrame即有行索引也有列索引,

解析:

B

【详解】

本题考查的是pandas库。

pandas库中的DataFrame是一个二维的、大小可变的、成分混合的、具有标签化坐标轴(行和列)的表数据结构。

DataFrame即有行索引也有列索引,可以被看做是由Seri

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小升初

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1