一、选择题
1.已知字符串a=\"python\",则a[1]的值为( ) A.\"p\" A.X=Y=Z=1
A.for i in range(20): C.for i in range(10,0,2): i=0 sum=0 while i<10: if i%2==0: sum+=i i+=1 print(‘sum=’,sum) A.sum=18
B.sum=20
C.sum=22
D.sum=30
5.王明编写了Python程序,根据输入的体重和身高计算BM值并显示是否超标。王明体重80kg,身高170cm。其中“体重80kg”“身高170cm”是对王明体重身高的符号记录属于( ) A.数据 A.DOS a = 0 b = 4 if b > a : a = 3 * b else: a = 10
程序运行后,a的值是( ) A.10 A.打印a,b A.int32 A.1a=4
B.0
B.输出(a,b) B.40XL
C.12 C.输出a,b C.self
D.4
D.输出a,b的值 D.name
8.在python中,语句print(a,b)的意思是( ) 9.下面( )是Python合法的变量名 10.以下Python中变量的命名正确的是( )
B.信息 B.Unix
C.知识 C.Python
D.智慧 D.Linux
6.以下哪个不属于计算机操作系统() 7.下列Python程序段
B.\"py\" B.X=(Y=Z+1)
C.\"Py\" C.X,Y=Y,X
B.for i in range(0,10): D.while s<50:
D.\"y\" D.X+=Y
2.下列哪条赋值语句在Python中是非法的:( ) 3.在Python中,下列循环结构用法错误的是( )。
4.下列Python程序段的运行结果是( )
B.print=5 C._A=2 D.a+b=3
11.在数学中,我们一般使用“=“表示相等关系,那么“=”在Python语言中的写法为( ) A.= n=0 s=0
while s <= 10: n=n+3 s=s+n print (s) A.0
B.3
C.18
D.30
13.除python语言之处,还有很多其他程序设计语言。程序设计语言经历了从机器语言、汇编语言到高级语言的发展过程。其中python语言是属于( )。 A.机器语言 A.b-=c B.c-b=c C.c-=b D.c==c-b
15.python语言的特点( )。 A.简单
B.免费、开源
C.可移植性
D.以上都是
B.高级语言
C.汇编语言
D.自然语言
14.Python中,赋值语句,“c=c-b”等价于( )
B.==
C.:=
D.<>
12.以下python程序段运行后,s的值是( )
二、程序填空
16.已知6月份10位技术考试成绩: 1 78 2 88 3 89 4 90 5 83 6 76 7 75 8 98 9 100 10 65 技术老师想统计出80分(含80)以上的人数,请完善程序,代码如下: a=[78,88,89,90,83,76,75,98,100,65] ______ sum=0 for i in range(n): if a[i]>=80: ________ print(sum)
执行上述程序段后,输出的内容是______
17.已知圆柱体的底面半径为r,高为h,(均为正整数),小张编写了一个程序计算圆柱体的地面周长和面积,圆柱体侧面积以及圆柱体体积,其中圆周率定义为:3.14,请根据下列
代码回答问题:
r=int(input(“请输入半径r:”)) h=int(input(“请输入高h:”)) _________________________ c=2*pi*r s=pi*r**2 S=c*h V=s*h print(c,s,S,V)
(1)解决问题的程序用到的控制结构有:__________________(填:顺序结构、分支结构、循环结构)
(2)请将程序补充完整。
(3)请找出程序中的错误代码,并改正。 ____________________________________________ 18.小王编写了“字符串缩写”程序,实现如下功能: 1.输入一串由英文字母和数字组成的字符串,
2.如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“ — ”和最后一个字符组成的新字符段, 3.例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。 程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:
实现上述功能的程序如下,请在程序划线处填入合适的代码。 s=input(\"请输入字符串s:\") _______ flag = False result=\" \"
for i in range( 0 , k-1): if ___________________ : result=result+s[i]+\"-\" flag = True
elif ord(s[i]) ! = ord(s[i+1])-1: result=result+s[i] _____
result=result + s[i+1]
print(\"缩写后的字符串为:\
划线处①处应该填入的语句为: ; 划线处②处应该填入的语句为: ; 划线处③处应该填入的语句为: 。
19.输入n,计算s=1!+2!+...+n!的未6位(不含前导0)。N<=1000000,n!表示前n个正整数之积。
20.编写程序,实现从键盘输入数据,数据前三位的ASCII值加2,从第四位开始ASCII值加3。 21.程序编写
求1+22+32+……+1002的结果 _______________________________ _______________________________ _______________________________ _______________________________ input(“运行完毕,请按回车键退出...”)
【参考答案】***试卷处理标记,请不要删除
一、选择题 1.D 【详解】
本题主要考查Python字符串。字符串索引从0开始,a[0]=\"p\",a[1]=\"y\",故本题选D选项。 解析:D 【详解】
本题主要考查Python字符串。字符串索引从0开始,a[0]=\"p\",a[1]=\"y\",故本题选D选项。
2.B 【详解】
本题考查Python语句。选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语
解析:B 【详解】
本题考查Python语句。选项A,X=Y=Z=1是合法的赋值语句;选项B,X=(Y=Z+1),X被赋
值“Y=Z+1”,但这个所谓的“Y=Z+1”并不返回任何值,所以这是一个错误的赋值语句,这是非法的;选项C,X,Y=Y,X这是交换语句,合法;选项D,X+=Y相当于X=X+Y,故本题选B。
3.C 【详解】
本题主要考查Python循环结构。range函数中第一个参数是起始值,第二个参数是终值,第三个参数是每次递增值,语句for i in range(10,0,2):初值是10,终值是0,
解析:C 【详解】
本题主要考查Python循环结构。range函数中第一个参数是起始值,第二个参数是终值,第三个参数是每次递增值,语句for i in range(10,0,2):初值是10,终值是0,每次递增2,将出现死循环,故本题选C选项。
4.B 【详解】
本题考查Python语句。根据while可知,当if i%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum
解析:B 【详解】
本题考查Python语句。根据while可知,当if i%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum=’,sum),则最后运行结果是sum=20,故本题选B。
5.A 【详解】
本题考查的是数据的定义。数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。故本题应选A。
解析:A 【详解】
本题考查的是数据的定义。数据是客观事物的符号记录,是信息的载体,是计算机加工的对象。“体重80kg”、“身高170cm”是对王明体重身高的符号记录属于数据。故本题应选A。
6.C 【详解】
本题主要考查计算机软件系统。DOS、Unix、Linux均是计算机操作系统,Python是程序开发软件,故本题选C选项。
解析:C
【详解】
本题主要考查计算机软件系统。DOS、Unix、Linux均是计算机操作系统,Python是程序开发软件,故本题选C选项。
7.C 【详解】
本题主要考查Python程序的执行。a=0,b=4,满足b>a,执行a=3*b=12,故程序运行后,a的值是12,故本题选C选项。
解析:C 【详解】
本题主要考查Python程序的执行。a=0,b=4,满足b>a,执行a=3*b=12,故程序运行后,a的值是12,故本题选C选项。
8.D 【详解】
本题主要考查Python输出函数。在python中,语句print(a,b)的意思是输出a,b的值,故本题选D选项。
解析:D 【详解】
本题主要考查Python输出函数。在python中,语句print(a,b)的意思是输出a,b的值,故本题选D选项。
9.ACD 【详解】
本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,不能是关键字,故本题选ACD选项。
解析:ACD 【详解】
本题主要考查Python变量的命名。Python变量的命名不能以数字开头(可以以下划线或字母开头),不能包含特殊符号,不能是关键字,故本题选ACD选项。
10.C 【详解】
本题考查Python变量命名规则
变量命名不能以数字开头,不能使用关键字,不能使用特殊符号。故本题选C选项
解析:C 【详解】
本题考查Python变量命名规则
变量命名不能以数字开头,不能使用关键字,不能使用特殊符号。故本题选C选项
11.B 【详解】
本题主要考查Python运算符。在Python语言等高级语言中,“=“往往被用于赋值语句,而表示相等的情况时,大多用“==”。因此B选项正确。
解析:B 【详解】
本题主要考查Python运算符。在Python语言等高级语言中,“=“往往被用于赋值语句,而表示相等的情况时,大多用“==”。因此B选项正确。
12.C 【详解】
本题主要考查Python程序的执行。n=0,s=0,循环条件是s<=10,则循环结束时,n=n+3=0+3+3+3=9,s=s+n=0+3+6+9=18,故程序结束后,s的值是18,故
解析:C 【详解】
本题主要考查Python程序的执行。n=0,s=0,循环条件是s<=10,则循环结束时,n=n+3=0+3+3+3=9,s=s+n=0+3+6+9=18,故程序结束后,s的值是18,故本题选C选项。
13.B 【详解】
本题考查的是计算机语音相关知识。高级语言是一种独立于机器,面向过程或对象的语言。python语言是一种面向对象的动态类型语言,故选项B正确。
解析:B 【详解】
本题考查的是计算机语音相关知识。高级语言是一种独立于机器,面向过程或对象的语言。python语言是一种面向对象的动态类型语言,故选项B正确。
14.C 【详解】
本题主要考查Python中常用运算符。Python中“-=”是减法赋值运算符,c -= b 等效于 c = c - b,因此C选项正确。 【点睛】
解析:C 【详解】
本题主要考查Python中常用运算符。Python中“-=”是减法赋值运算符,c -= b 等效于 c = c - b,因此C选项正确。 【点睛】
15.D 【详解】
本题考查的是python语言的特点。Python语言的三个特点是语法简单(函数式语言与面向对象语言的结合)、使用直接(大量丰富的库)、开发周期短(代码量小)。故选项D正确。
解析:D 【详解】
本题考查的是python语言的特点。Python语言的三个特点是语法简单(函数式语言与面向对象语言的结合)、使用直接(大量丰富的库)、开发周期短(代码量小)。故选项D正确。
二、程序填空
16.①n=len(a) sum+=1或sum=sum+1 6 【详解】
本题主要考查Python程序调试与执行。①变量n用来保存数组a的长度,使用len函数,故此处填n=len(a)。②使用for循环统计出80分(含80)以上的人数,用变量sum统计满足条件的人数,当满足if条件时,sum变量递增,故此处填sum+=1或sum=sum+1。③执行上述程序段后,sum=6,故输出的内容是6。
17.顺序结构 pi=3.14 r=float(input(“请输入半径r:”)) 整型和实数型不能直接运算,结果会有误差 h=float(input(“请输入高h:”)) 【详解】
本题主要考查Python程序执行与调试。①分析程序可知,解决问题的程序用到的控制结构有:顺序结构。②圆周率定义为:3.14,故第二空填pi=3.14。③r=float(input(“请输入半径r:”)) 整型和实数型不能直接运算,结果会有误差 h=float(input(“请输入高h:”))。
18.k=len(s) ord(s[i])==ord(s[i+1])-1 and flag==False 或
ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag flag = False 【详解】
本题主要考查Python程序的执行与调试。①第一空将输入的字符串s的长度赋给变量k,故填k=len(s)。②flag用来标记是否有连续字符构成的升序段,第二空判断相邻位置后面字符的ASCII值是否比前面的字符的ASCII值大1且flag为False,故填
ord(s[i])==ord(s[i+1])-1 and flag==False 或 ord(s[i])==ord(s[i+1])-1 and not flag 或 ord(s[i])+1==ord(s[i+1]) and flag==False 或 ord(s[i])+1==ord(s[i+1]) and not flag。③如果不满足if判断条件,则需要将该字符加到变量result中,同时赋值flag为False,表示当前没有连续字符构成的升序段,需要继续判断寻找,故填flag = False。 19.s=0
n=eval(input(\" 请输入一个数:\")) for i in range(0,n): f=1
for j in range(1,i): f=f*j s+=f
print(s%1000000) 【详解】
本题主要考查Python程序设计。可以通过嵌套for循环实现题干要求,外层循环进行求和,内层循环实现阶乘,具体代码如下: s=0
n=eval(input(\" 请输入一个数:\")) for i in range(0,n): f=1
for j in range(1,i): f=f*j s+=f
print(s%1000000)
20.s=input(\"请输入要转换的字符) c=len(s) #len 求字符串长度 for i in range(0,c): if i<2:
print (chr(ord(s[i])+2)) # ord ord() 函数是 chr() 函数配对函数,将字符转ASCII值 else:
print(chr(ord(s[i]) + 3)) 【详解】
本题主要考查程序设计。题干要求可通过Python程序条件分支结构实现,具体代码如下: s=input(\"请输入要转换的字符) c=len(s) #len 求字符串长度 for i in range(0,c): if i<2:
print (chr(ord(s[i])+2)) # ord ord() 函数是 chr() 函数配对函数,将字符转ASCII值 else:
print(chr(ord(s[i]) + 3))
21.total=0 #变量可任选(符合规则) for i in range(1,101): total=total+i*i #total=total+i**2 print(total) 【详解】
本题主要考查Python程序的编写。①变量total用来统计最终的计算结果,其初始值为0,故填total=0 #变量可任选(符合规则)。②求1+22+32+……+1002的结果,用for循环结构,变量i的范围是从1到100,故填for i in range(1,101):。③计算语句是total=total+i*i #total=total+i**2。④最后用print()函数输出计算结果total,故填print(total)。
因篇幅问题不能全部显示,请点此查看更多更全内容