一、选择题
1.已知字符串a="python",则a[ 1 : 3 ]的值为( )
A."pyth" ."pyt" ."py" ."yt"
2.已知a=-2,b=10/3,则python表达式round(b,1)+abs(a)的值为( )
A.1.3 .5.33 .5.4 .5.3
3.在Python中,设a=2,b=3,表达式a=3值是( )
A.1 .0 .True .False
4.运行下列Python程序
i=1
s=1
while ①:
s=s*i
i+=2
print(s)
当输出结果为105时,则①处应填入( )
A.i<=7 .i<7 .i>=7 .i>7
5.在python中,有程序如下
A=input()
print(A * 5)
通过键盘输入5,则运算结果是()
A.5 5 5 5 5 .25 .5*5 .5 5
6.在Python中运行下列程序,输出结果为( )
for i in range (1,5):
print(i)
A.1,2,3,4,5 .1 2 3 4 5 .0,1,2,3,4 .1 2 3 4
7.在Python语言中,以下简单数据类型选项中描述错误的是( )
A.整数(int)、浮点数(float) .字符串(str)
C.布尔(bool) .2.5+2.5的值是整数(int)类型
8.韦沐沐同学利用Python软件编写“求能被3整除的数”程序,在设计算法环节,使用流程图描述算法,如右图所示,其中空白处可以填入的是( )
A.A÷3==0 .A/3==0 .A\\3==0 .A%3==0
9.下列不可以作为Python合法变量名的是( )
A.c0 .2a .a_3 .小河
10.在Python语言中,用来定义函数的关键字是( )。
A.return .def .function .import
11.利用Word 软件编辑了一篇关于“Python简介”的文档,部分界面如图所示,下列说法正确的是( )
A.该文档中的有2个用户添加了2处批注
B.该文档中图片采用的环绕方式为上下型
C.该文档中总共有4处修订
D.若要对文档中所有的“Python”文字设置为“红色倾斜”格式,用自动更正功能最合适
12.关于Python,以下几种说法不正确的是( )。
A.Python是一种高级程序设计语言
B.Python属于汇编语言,或者说属于低级语言
C.Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点
D.Python是一种面向对象的、解释性计算机语言
13.如下Python程序段
for i in range(1,4):
for j in range(0,3):
print ("Python")
语句print ("Python")的执行次数是( )
A.3 .4 .6 .9
14.在Python中,判断n是否为偶数的表达式是( )
A.n/2=0
B.n%2==0
C.n%2=0
D.n/2==0
15.Python表达式“50-50%6*5//2**2”的结果为( )
A.48 .25 .0 .45
二、程序填空
16.学习了Python绘制图形操作后,信息小组接到了编程演示的任务。为此,小组同学编写了一段代码,绘制出多个不同颜色的圆形。
代码如下:
import turtle
turtle. bgcolor("black")
colors=["red", "green", "blue", "yellow"]
for x ① range(100):
turtle. pencolor(colors[x%4])
turtle. circle(x)
turtle. left(90)
请分析任务,完成下列题目。
(1)程序中①处应填写(________) 。
A.print B.input C.in D.colors
(2)程序中x%4的作用是(________)。
A.计算x乘以4的结果
B.计算x除以4的整数部分
C.计算x除以4的小数部分
D.计算x除以4的余数
(3)执行此程序,绘制出圆形的总颜色数是(________)。
A.1 B.4 C.5 D.100
(4)执行此程序,绘制出圆形的总个数是(________)。
A.1 B.4 C.99 D.100
(5)此程序属于程序设计结构中的(________)。
A.顺序结构 B.分支结构
C.循环结构 D.跳转结构
17.某字符转置算法描述如下:
将字符串(均为大写字符)s依次转换为相对应的数值(字符A~Z对应数值1~26);
·转换后的数值以K个数据为一段,将n个待处理的数据依次分割成若干段(最后一段不足部分用0来补充);
每一段中K个数据与K*K转置矩阵进行乘法运算;
将乘法运算得到的每一个结果值除以26求余数,依次转换成相应字符(数值1~26对应字符A~Z),最后按原始字符串长度输出。
乘法运算规则如下:
第i个元素c(i)=第j个元素a(j)*转置矩阵第j行第i个元素b(t)的乘积之和(其中j=1,2…K)
例如:字符串s=PYTHON,区块大小K=4,的转置过程如下:
(1)根据算法描述,上述示例中,字符“N”的相乘结果(即图中(★)处)为________。
(2)请在划线处填入合适代码。
Private Sub Commandl_Click()
Dim a(1 To 100)As Integer ´存储字符串,长度不超过100个字符
Dim b(1 To 100)As Integer 存储转置矩阵,长度不超过 10*10
Dim c(1 To 100)As Long
Dim s As String, tmp As String
Dim k As Integer, t As Integer, i As Integer, j As Integer
Dim n As Integer, m As Integer, lens As Integer
s=Textl. Text ´在 Textl 中输入原始字符串
k=Val(Text 2.Text) ´在 Text 2 中输入区块大小K
Randomize
For i=1 To k^2
b(i)=Int(Rnd*9)+1
tmp=tmp十Str(b(i))
If i Mod k=0 Then
List 2. AddItem tmp
tmp="" .
End If
Next i
lens=Len(s):n=lens
For i=1 To n
tmp=Mid(s,i,1)
①__________
Listl. AddItem Str(a(i))
Next i
Do While n Mod k<>0
n=n十1
a(n)=0
Listl. AddItem Str(a(n))
Loop
For i=1 To n
m=(i―1)Mod k+1
t=1
Forj= ②__________
c(i)=a(j) * b((m-1) * k+t)+c(i)
t=t+1
Next j
Next i
For i=1 To n
List 3. AddItem Str(c(i))
Next i
s=″″
For i=1 To lens
③__________
s=s+Chr(t+)}
Next i
Text 3.Text=s ´在Text 3 中输出转置后的字符串
End Sub
18.求100以内素数。
19.利用for循环,分别计算1--100中奇数的和、偶数的和。
20.程序分析题
学校举行校园歌手大赛,评委由6人组成。评分方法:去掉一个最高分和一 个最低分,计算其余4位评委的平均分,作为选手的最终得分。max记录最高分; min记录最低分; s记录六位评委的总分; aver记录最终得分。
第1步:从文本框中分别读入6位评委的打分并依次存入到a(1)至a(6)中
第2步:将第1位评委的打分a(1)分别赋给最高分max ,最低分min和总分S
第3步:利用循环结构把另外5位评委的打分累加给s从而求出6位评委的总分s ,同时把5位评委的打分与max和min进行比较,得出6位评委中的最高分max和最低分min。
第4步:从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分。
max=a[0]
min=a[0]
s=0
for i in range(6) :
s=s+a[i]
if a[i]>max:
max=a[ i]
if a[i] aver=( )/4 (1)在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由______控件生成的。 A.Entry B.Label C.Frame D.Button (2)题目中算法描述采用的是__________A、自然语言B、伪代码 C、流程图 D、.N-S图 (3)下列程序代码片段对应于算法描述中的第2步至第4步。请填写片段中空白处的表达式填写完整________ 21.编写程序。信息社团的三个同学和Bruce一起做游戏,他们的游戏规则很简单,从1开始依次报数,每当一个数能被7整除或者十位是7就要跳过这个数,现在给出一个数N,请输入从1到N(包含N)中要跳过的数。 【参】***试卷处理标记,请不要删除 一、选择题 1.D 【详解】 本题主要考查Python字符串。a[ 1 : 3 ]取字符串索引第一 个到第三个字符(不包括第三个),故a[ 1 : 3 ]的值为"yt",故本题选D选项。 解析:D 【详解】 本题主要考查Python字符串。a[ 1 : 3 ]取字符串索引第一 个到第三个字符(不包括第三个),故a[ 1 : 3 ]的值为"yt",故本题选D选项。 2.D 【详解】 本题主要考查Python表达式的运算。round(x,n)方法返回 x 的小数点四舍五入到n个数字,abs是求绝对值,已知a=-2,b=10/3,则表达式round(b,1)+abs( 解析:D 【详解】 本题主要考查Python表达式的运算。round(x,n)方法返回 x 的小数点四舍五入到n个数字,abs是求绝对值,已知a=-2,b=10/3,则表达式round(b,1)+abs(a)=3.3+2=5.3,故本题选D选项。 3.C 【详解】 本题主要考查Python基本运算。Python比较运算优先级高于逻辑运算,因此C选项正确。 【点睛】 解析:C 【详解】 本题主要考查Python基本运算。Python比较运算优先级高于逻辑运算,因此C选项正确。 【点睛】 4.A 【详解】 本题考查循环语句。在循环体内,s=s*i,i的初值为1,循环内i每次递增2,则s=1*3*5*7=105,最后结果为105,可知条件为while i<=7,故本题选A。 解析:A 【详解】 本题考查循环语句。在循环体内,s=s*i,i的初值为1,循环内i每次递增2,则s=1*3*5*7=105,最后结果为105,可知条件为while i<=7,故本题选A。 5.A 【详解】 本题考查Python算法及其程序实现。 input()函数接收的是字符串,故print(A * 5)时,输出5个A里存储的字符串。通过键盘输入5,则运算结果是:5 5 5 5 5,选项 解析:A 【详解】 本题考查Python算法及其程序实现。 input()函数接收的是字符串,故print(A * 5)时,输出5个A里存储的字符串。通过键盘输入5,则运算结果是:5 5 5 5 5,选项A正确。 6.D 【详解】 本题考查Python程序执行 range(1, 5)表示1到4的值,注意不包括5。故本题选D选项 解析:D 【详解】 本题考查Python程序执行 range(1, 5)表示1到4的值,注意不包括5。故本题选D选项 7.D 【详解】 本题主要考查Python数据类型。整数(int)、浮点数(float)、字符串(str)、布尔(bool),2.5+2.5=5.0,值是浮点数(float)类型,故本题选D选项。 解析:D 【详解】 本题主要考查Python数据类型。整数(int)、浮点数(float)、字符串(str)、布尔(bool),2.5+2.5=5.0,值是浮点数(float)类型,故本题选D选项。 8.D 【详解】 本题考查的是流程图及Python表达式相关知识。能被3整除的数即除3的余数为0,在Python中%表示求余,故本题应选D。 解析:D 【详解】 本题考查的是流程图及Python表达式相关知识。能被3整除的数即除3的余数为0,在Python中%表示求余,故本题应选D。 9.B 【详解】 本题主要考查Python变量的命名。变量的命名规则有:不能以数字开头,可以以字母或下划线开头,不能包含特殊字符,不能是关键词,故2a不可以作为Python合法变量名,故本题选B选项。 解析:B 【详解】 本题主要考查Python变量的命名。变量的命名规则有:不能以数字开头,可以以字母或下划线开头,不能包含特殊字符,不能是关键词,故2a不可以作为Python合法变量名,故本题选B选项。 10.B 【详解】 本题主要考查Python关键字。return [表达式]结束函数,选择性地返回一个值给调用方;def用来定义函数;import用来导入模块,故本题选B选项。 解析:B 【详解】 本题主要考查Python关键字。return [表达式]结束函数,选择性地返回一个值给调用方;def用来定义函数;import用来导入模块,故本题选B选项。 11.C 【详解】 本题考查WORD相关知识。该文档中的有1个用户a添加了2处批注,A错。该文档中图片采用的环绕方式为四周或者紧密,但不是上下型,B错。若要对文档中所有的Python文字设置为红色倾斜格式 解析:C 【详解】 本题考查WORD相关知识。该文档中的有1个用户a添加了2处批注,A错。该文档中图片采用的环绕方式为四周或者紧密,但不是上下型,B错。若要对文档中所有的Python文字设置为红色倾斜格式,则用替换功能。选项C的说法正确。 12.B 【详解】 本题主要考查Python程序设计语言。Python是一种高级程序设计语言;Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点;Python是一种面向对象的、 解析:B 【详解】 本题主要考查Python程序设计语言。Python是一种高级程序设计语言;Python是一种代表简单主义思想的语言,它具有简单、免费、开源和可移植等特点;Python是一种面向对象的、解释性计算机语言,故本题选B选项。 13.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选项。 14.B 【详解】 本题主要考查Python表达式的运算。Python中取余符号是“%”,“==”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2==0,故本题选B选项。 解析:B 【详解】 本题主要考查Python表达式的运算。Python中取余符号是“%”,“==”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2==0,故本题选B选项。 15.A 【详解】 本题主要考查Python表达式的运算。50-50%6*5//2**2=50-2*5//4=50-10//4=48,故本题选A选项。 解析:A 【详解】 本题主要考查Python表达式的运算。50-50%6*5//2**2=50-2*5//4=50-10//4=48,故本题选A选项。 二、程序填空 16.C D B D C 【详解】 本题主要考查Python程序调试。①Python程序for循环格式是:for 变量 in range( ),故程序中①处应填写in,选C选项。②程序中x%4的作用是计算x除以4的余数,选D选项。③colors=["red", "green", "blue", "yellow"],依次循环从colors中取颜色,故执行此程序,绘制出圆形的总颜色数是4,故本题选B选项。④x的范围是从0到99,故执行此程序,绘制出圆形的总个数是100个,选D选项。⑤此程序属于程序设计结构中的循环结构,选C选项。 17.①a(i)=Asc(tmp)-或a(i)=Asc(tmp)-Asc("A")+1 ②i–m+1To i–m+k ③t=(c(i)–1) Mod 26+1 【详解】 本题考查乘法运算规则的理解以及转置矩阵中行列数据的读取。(1)根据算法描述,图中(1)处的值为15×5+14×1+0×2+0×9=。(2)程序先随机生成数组b,其下标为1到k×k,并以行列的形式显示在列表框list2中(即为转置矩阵),然后读取大写字符串s中的每个字符,并将每个字符转换成相应字母表中的位置存储在数组a中。代码①处为字符转成相应的字母表中位置值,下方代码将a(i)输出在列表框listl中,故此处应获取a(i)的值。根据题干描述“字符A~Z对应数值1~26”,此处为将tmp获取的字符通过Asc函数进行转换,语句为“a(i)=Asc(tmp)-”,还可以是“a(i)=Asc(tmp)-Asc(″A″)+1”。代码②处为循环变量j的取值范围,根据乘法规则,变量j的范围是每一段中的1到k之间的值,需要获取每一段的起始位置下标,结合上文得到的m值,可得循环变量的范围是“i-m+1 To i-m十k”。代码③处是将计算结果c(i)按原长度转换成相应大写字符,计算结果要求除以26取余,若直接写成c(i)Mod 26,则导致数值26的结果为0,因此需要先减1,Mod后再加1这样的处理技巧,因此答案为“(c(i)-1)Mod 26+1”。 18.for i in range(1,100): if i > 1: for j in range(2,i): if (i % j) == 0: break else: print(i) 【详解】 本题主要考查Python程序设计。可以通过for循环找出100以内的素数,用i依次整数2~i-1,如果能整除表明i不是素数,否则i为质数,具体代码如下: for i in range(1,100): if i > 1: for j in range(2,i): if (i % j) == 0: break else: print(i) 19.sum1=0 sum2=0 for i in range(1,101): if i%2==0 : sum1+=i else: sum2+=i print(sum1,sum2) 【详解】 本题主要考查程序设计。可以使用Python程序设计语言实现题干要求,通过if条件分支结构可以实现分别计算奇数的和、偶数的和,具体代码如下: sum1=0 sum2=0 for i in range(1,101): if i%2==0 : sum1+=i else: sum2+=i print(sum1,sum2) 20.A A s-max-min 【详解】 本题主要考查Python程序的执行与调试。①在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由Entry控件生成的(Entry 是Tkinter 用来接收字符串等输入的控件,该控件允许用户输入一行文字),故选A选项。②题目中算法描述采用的是伪代码,故选A选项。③从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分,故此处填s-max-min。 21.N=int(input("请输入一个数")) for i in range(1,N+1): if(i%7==0 or i/10==7): print(i,end=" ") 【详解】 本题考查Python语言编程解决实际问题。本题要找到能被7整除或者十位是7的数,并且这两个条件是或的关系,其关键代码为i%7==0 or i/10==7。程序运行代码详见下图:下载本文