3.2Python程序语言设计
一、选择题
1.下列选项中错误的赋值语句( )
A.a,b=5,8 B.11=a+b C.a=b=9 D.a=a+b
2.Python表达式20 % 3+3 * 2的运算结果是( )
A.12 B.8 C.11 D.15
3.以下 Python程序代码段的运行结果是( )
a = 3 b = a * 4 #b = b / 6 print(b)
A.3 B.0.5 C.12 D.2
4.下列 Python程序段的运行结果是( )
x = 12 + 3 * (5 * 8-14)//5 print(x)
A.18 B.27 C.27.6 D.15
5.以下Python中的函数,常用于获取用户键盘输入的是( )
A.pow() B.eval() C.print() D.input()
6.以下编程语言中执行效率最高的是( )
A.汇编语言 B.机器语言 C.Python语言 D.C++语言
7.以下关于Python函数的作用,说法错误的是( )
A.增加代码的维护难度 B.实现代码的复用
C.使代码的逻辑结构更清晰 D.增强代码的可读性
8.以下Python程序段的运行结果是( )
flag = False name= "C++" if name == "Python": flag = True print("Welcome") else: print (name)
A.C++ B.True C.Welcome D.Python
9.下列Python语句书写正确的是( )
A.a,b=b,a B.PRINT(’a=’,35) C.n= int(input("n =5") D.a=3/{[45-2]*11}
10.下列表达式的值为False的是( )
A.8%3==6//3 B.not(8+3<8-3)
C.2**3+1==7 D.10/3!=5
11.有如下Python程序段:
import jieba
str="热烈庆祝建党100周年"
fc=jieba.lcut(str)
print(fc)
for i in fc[::1]:
print(i)
已知分词之后的文本输出fc为:['热烈庆祝', '建党', '100', '周年'],则程序运行结束后的结果是( )
A.周年100建党热烈庆祝
B.热烈庆祝建党100周年
C.热烈庆祝建党周年100
D.年周001党建祝庆烈热
12.下列程序的功能是求1~x之间所有5的倍效之和
x=int(input("输入数字x:")
i=1
s=0
while i<=x:
if ① :
s=s+i
print(i,end=",")
②
print("s=",s)
则划线处应填入的语句是( )
A.①i%5==0 ②i=i+1
B.①i//5==0 ②i=i+1
C.①i%5==0 ②i=i+2
D.①i%5==0 ②i=i+3
13.已知list=["Word","for","sent","city","piano"],则list[3][2]的返回值为( )
A."e" B."o" C."t" D."a"
14.有如下Python程序段:
def fun():
x=6
return x
x=3
print(fun(),x)
则程序执行后输出( )
A.6 3 B.3 3 C.6 6 D.程序出错,抛出异常
15.变量s中存储一个字符,写一个Python表达式该字符为大写字母时值为True,否则为False,下列不符合条件的表达式为( )
A."A"<=s<="Z" B.s in"ABCDEFGHIJKLMNOPQRSTUVWXYZ#"
C.ord("A")<=ord(s)<=ord("Z") D.s>="A" and s<="Z"
16.有如下python程序:
from PIL import Image
im=Image.open("2.jpg")
i=0
while i<=3:
i=i+1
im=im.rotate(i*90)
im.show()
图2.jpg原图如右图所示,运行该程序后,图像显示为( )
A. B.
C. D.
二、填空题
17.调试程序,修改代码。
要判断一个正整数n(n>=3)是否为素数,一种方法是:统计2到n-1之间所有能整除n的整数个数s,若s等于0,则n是素数,否则就不是素数,为了实现这一算法,编写代码如下,运行程序时出现错误提示
源程序 print("请输入一个大于等于3的正整数n:") n = input() s = 0 for i in range (2,n): if n % i==0: s = s + 1 if s == 0: print(n,"是素数") else: print(n,"不是素数")
运行时错误提示 请输入一个大于等于3的正整数n: 7 Traceback (most recent call last): File "D:\素数. py",line 4,in 根据错误提示,一种修改方法是:只需修改图中源程序的第2行代码,就可以使程序正常运行,则第2行应修改为:__________
18.阅读下列程序,写出运行结果。
b = "" x = 11 while x> 0: r = x % 2 b = str(x)+ b #str(r)将变量r转换为字符串 x = x // 2 print (b)
运行结果是:____________
19.阅读下列程序,写出运行结果。
sum = 0 data = [34,5,9,41,78,2] for i in data : if i % 2 == 0: sum = sum + i print(sum)
运行结果是:____________
试卷第2页,共3页
参考答案
1.B
【详解】
本题主要考查Python赋值语句。赋值语句是将“=”右边的表达式赋给左边的变量,语句11=a+b中,11是常量,是错误的赋值语句,故本题选B选项。
2.B
【详解】
本题主要考查Python表达式的运算。20 % 3+3 * 2=2+6=8,故本题选B选项。
3.C
【详解】
本题考查的是Python顺序结构及注释符。“#”是单行注释符,表示该行语句不执行。故b=3*4=12。选项C正确。
4.B
【详解】
本题主要考查Python程序的执行。x = 12 + 3 * (5 * 8-14)//5=12+3*26//5=12+78//5=12+15=27,故本题选B选项。
5.D
【详解】
本题主要考查Python函数。pow() 方法返回 xy(x的y次方) 的值;eval() 函数用来执行一个字符串表达式,并返回表达式的值;print()是输出函数;input()是输入函数,常用于获取用户键盘输入,故本题选D选项。
6.B
【详解】
本题考查的是计算机语言。计算机语言可以分机器语言、汇编语言、高级语言。机器语言是用二进制代码表示的计算机能直接识别和执行的一种机器指令的集合,执行效率最高。Python、C++属于高级语言。故本题应选B。
7.A
【详解】
本题主要考查Python函数。Python函数可以实现代码的复用,使代码的逻辑结构更清晰,增强代码的可读性,降低代码的维护难度,故本题选A选项。
8.A
【详解】
本题主要考查Python分支结构。name= "C++",不满足if条件,执行else部分,输出变量name的内容,即C++,故本题选A选项。
9.A
【详解】
本题考查的是Python语句。选项A是交换变量a,b的值,书写正确;Python区分大小写,输出语句是用print,故选项B错误;选项C小括号没有成对,故选项C错误;Python运算都是用小括号,故选项D错误。
10.C
【详解】
本题主要考查Python表达式的运算。8%3=2,6//3=2,表达式8%3==6//3值为True;表达式8+3<8-3值为False,则表达式not(8+3<8-3)值为True;2**3+1=9,故表达式2**3+1==7值为False;10/3=3.33,故表达式10/3!=5值为False,故本题选C选项。
11.B
【详解】
本题主要考查Python字符串切片操作。切片操作基本表达式:object[start_index:end_index:step],step:正负数均可,其绝对值大小决定了切取数据时的“步长”,而正负号决定了“切取方向”,正表示“从左往右”取值,负表示“从右往左”取值。start_index:表示起始索引(包含该索引对应值),该参数省略时,表示从对象“端点”开始取值。end_index:表示终止索引(不包含该索引对应值),该参数省略时,表示一直取到数据“端点”。故程序运行结束后的结果是热烈庆祝建党100周年,故本题选B选项。
12.A
【详解】
本题主要考查Python程序的调试。第一空判断i是不是5的倍数,填i%5==0;求1~x之间所有5的倍效之和,每次i递增1,第二空填i=i+1,故本题选A选项。
13.C
【详解】
本题主要考查Python列表的操作。列表下标从0开始,list[3][2]返回第四元素“city”中的第三个字符“t”,故本题选C选项。
14.A
【详解】
本题主要考查Python程序的执行。fun函数返回的值是6,fun函数外x的值为3,故程序执行后输出6和3,故本题选A选项。
15.B
【详解】
本题主要考查Python表达式的运算。表达式s in"ABCDEFGHIJKLMNOPQRSTUVWXYZ#"用来判断字符s是否在字符串"ABCDEFGHIJKLMNOPQRSTUVWXYZ#"里面,若在返回True,不在则返回False,故本题选B选项。
16.D
【详解】
本题主要考查Python函数。一共循环四次,共旋转90+180+270+360=360*2+180,即相当于原图旋转180,故选D选项。
17.n = int(input())
【详解】
本题主要考查Python程序的调试。input函数把用户的键盘输入作为字符串返回,分析程序可知,需要将其转换为整型赋给变量n,故第2行应修改为:n = int(input())。
18.12511
【详解】
本题主要考查Python程序的执行。b="",x=11,第一次循环,r=x%2=1,b=str(x)+b="11",x=x//2=5;第二次循环,r=x%2=1,b=str(x)+b="511",x=x//2=2;第三次循环,r=x%2=0,b=str(x)+b="2511",x=x//2=1;第四次循环,r=x%2=1,b=str(x)+b="12511",x=x//2=0,循环结束,输出b的值是12511。
19.114
【详解】
本题主要考查Python程序的执行。分析程序可知,该程序实现将列表data中的偶数进行求和,故sum=0+34+78+2=114,故运行结果是114。
答案第1页,共2页
答案第1页,共2页