资料python软件编程等级考试三级编程实操题.docx

上传人:b****4 文档编号:5430633 上传时间:2023-05-08 格式:DOCX 页数:18 大小:119.09KB
下载 相关 举报
资料python软件编程等级考试三级编程实操题.docx_第1页
第1页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第2页
第2页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第3页
第3页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第4页
第4页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第5页
第5页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第6页
第6页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第7页
第7页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第8页
第8页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第9页
第9页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第10页
第10页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第11页
第11页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第12页
第12页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第13页
第13页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第14页
第14页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第15页
第15页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第16页
第16页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第17页
第17页 / 共18页
资料python软件编程等级考试三级编程实操题.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

资料python软件编程等级考试三级编程实操题.docx

《资料python软件编程等级考试三级编程实操题.docx》由会员分享,可在线阅读,更多相关《资料python软件编程等级考试三级编程实操题.docx(18页珍藏版)》请在冰点文库上搜索。

资料python软件编程等级考试三级编程实操题.docx

资料python软件编程等级考试三级编程实操题

资料python软件编程等级考试(三级)编程实操题

一、选择题

1.以下哪个不是python关键字()

A.coutB.fromC.notD.or

2.在python中,下列哪个选项是正确的赋值语句()

A.5s=80B.2018=xC.a+b=cD.s=s+5

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

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

max(data)

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

4.在Python程序设计语言中,用于输入和输出的函数分别是()

A.read()和write( )B.input()和output( )

C.input()和print( )D.cin()和cout()

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

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

B.区分大小写

C.不区分大小写

D.不能使用保留字

6.有python程序如下

a=int(input())

b=int(input())

c=input()

ifc=='+':

print(a+b)

elifc=='-':

print(a-b)

elifc=='*':

print(a*b)

elifc=='/':

print(a/b)

else:

print(“输入错误,请重试”)

当程序运行后,小新依次输入92*

程序输出结果应为()

A.18B.11C.7D.4

7.以下不属于高级程序设计语言的是()。

A.C++B.VBC.机器语言D.Python

8.下列选项中,不能作为python程序变量名的是()

A.abcB.abc123C.123abcD.abc__123

9.下列可以导入Python模块的语句是()

A.importmodule

B.inputmodule

C.printmodule

D.defmodule

10.以下选项中,不是Python中文件操作的相关函数是()。

A.open()B.load()

C.read()D.write()

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

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

12.如下Python程序段

foriinrange(1,4):

forjinrange(0,3):

print("Python")

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

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

13.在Python中,判断n是否为偶数的表达式是()

A.n/2=0

B.n%2==0

C.n%2=0

D.n/2==0

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

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

15.在Python中,设a=2,b=3,表达式not(b-a>0)值是()

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

二、程序填空

16.某仓库物品代码格式为“X-XXXXXXX-Y”,其中“X”和“Y”均为0到9之间的数字,“Y”为校验码。

校验码由前面9个X计算得到,计算方法为:

从左边开始,第1个数字乘以1加上第2个数字乘以2……依次类推,直到加上第9个数字乘以9,将该结果除以10,所得余数即为校验码。

用Python设计一个程序,输入物品代码,判断输入的代码中校验码是否正确,如果正确输出“正确”,否则输出“错误"。

运行样例如下所示:

样例1:

输入:

2-163-91475-4

输出:

正确

样例2:

输入:

2-163-91475-5

输出:

错误

(1)Python程序实现如下,请在划线处填入正确的代码:

s=input("输入物品代码:

")

a=[]

foriinrange(0,13):

if___

a.append(int(s[i]))#append()函数用于在列表末尾添加新的对象

sum=0

foriinrange(0,9):

____

sdm=sum%10

___

ifsdm==ydm:

print("正确")

else:

print("错误")

17.编写Python程序实现如下功能:

输入年月日,输入格式如“2021-06-21”,年月日之间用“-”分隔。

判断这一天是这一年的第几天。

以2021-06-21为例,前面5个月总天数,加上21天即这一天是本年的第几天。

特殊情况,当输入的年份是闰年时,2月份有29天。

闰年的判断方式如下:

I、能被4整除,但不能被100整除;

II、能被400整除;

(1)“2020-05-20”这一天是这一年的第_________天。

(2)编写Python代码如下,在划线处填入正确的代码

_________________

_________________

_________________

(3)加框处的代码有误,请改正。

改正:

_________________

mon=[31,28,31,30,31,30,31,31,30,31,30,31]#mon中存储1-12每个月的天数

s=input("请输入年月日:

")

'month=int(s[5:

7])

sum=0

foriinrange(②):

sum+=mon[i]

sum+=day

if

:

isleap=True

else:

isleap=False

if③

sum+=1

print("这一天是当年的第"+str(sum)+''天'')

18.某字符转置算法描述如下:

将字符串(均为大写字符)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)请在划线处填入合适代码。

PrivateSubCommandl_Click()

Dima(1To100)AsInteger´存储字符串,长度不超过100个字符

Dimb(1To100)AsInteger存储转置矩阵,长度不超过10*10

Dimc(1To100)AsLong

DimsAsString,tmpAsString

DimkAsInteger,tAsInteger,iAsInteger,jAsInteger

DimnAsInteger,mAsInteger,lensAsInteger

s=Textl.Text´在Textl中输入原始字符串

k=Val(Text2.Text)´在Text2中输入区块大小K

Randomize

Fori=1Tok^2

b(i)=Int(Rnd*9)+1

tmp=tmp十Str(b(i))

IfiModk=0Then

List2.AddItemtmp

tmp="".

EndIf

Nexti

lens=Len(s):

n=lens

Fori=1Ton

tmp=Mid(s,i,1)

①__________

Listl.AddItemStr(a(i))

Nexti

DoWhilenModk<>0

n=n十1

a(n)=0

Listl.AddItemStr(a(n))

Loop

Fori=1Ton

m=(i―1)Modk+1

t=1

Forj=②__________

c(i)=a(j)*b((m-1)*k+t)+c(i)

t=t+1

Nextj

Nexti

Fori=1Ton

List3.AddItemStr(c(i))

Nexti

s=″″

Fori=1Tolens

③__________

s=s+Chr(t+64)}

Nexti

Text3.Text=s´在Text3中输出转置后的字符串

EndSub

19.广场上有许多(有数百人)小朋友在玩分组游戏,当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个。

编写程序求出这些小朋友的可能人数。

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

________

a=[]

foriinrange(100,1000):

if_____________:

a.append(i)

total+=1

print("这群小朋友总的人数有:

")

forjinrange(len(a)):

print(____,end='、')

print('')

print('可能情况数为:

',total,'种')

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

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

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

20.请编写一个密码登陆系统,接收用户从键盘输入的密码和你自己的密码进行比对,如果正确就显示“恭喜你进入系统”如果不正确让用户重新输入,有三次机会。

21.分析完善程序

已知包含25项的数列:

1,2/3,3/5,....,24/47,25/49。

问题1:

写出该数列的通项公式f(n)=_①

问题2:

以下是计算S=1+2/3+3/5+...+24/47+25/49的程序,请补全代码:

s=0

foriinrange(1,26):

s=s+②

print(“s=”,s)

补充完成上述通项公式和程序:

①f(n)=_________

②___________

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

 

一、选择题

1.A

【详解】

本题主要考查Python关键字。

关键字from一般用于类的导入,not、or是逻辑运算符,cout不是Python关键字,故本题选A选项。

解析:

A

【详解】

本题主要考查Python关键字。

关键字from一般用于类的导入,not、or是逻辑运算符,cout不是Python关键字,故本题选A选项。

2.D

【详解】

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

“5s”不是一个合法的变量名,不能将变量x赋给一个数值或表达式,可以将s+5赋给变量s,故本题选D选项。

解析:

D

【详解】

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

“5s”不是一个合法的变量名,不能将变量x赋给一个数值或表达式,可以将s+5赋给变量s,故本题选D选项。

3.C

【详解】

本题主要考查Python函数。

max当接收的是列表,则返回列表中最大的元素,故执行下列语句后,显示结果172,故本题选C选项。

解析:

C

【详解】

本题主要考查Python函数。

max当接收的是列表,则返回列表中最大的元素,故执行下列语句后,显示结果172,故本题选C选项。

4.C

【详解】

本题主要考查Python程序设计语言中的输入和输出函数。

input()函数返回值默认是字符串。

print()函数默认是输出后换行。

因此C选项正确。

【点睛】

解析:

C

【详解】

本题主要考查Python程序设计语言中的输入和输出函数。

input()函数返回值默认是字符串。

print()函数默认是输出后换行。

因此C选项正确。

【点睛】

5.C

【详解】

本题主要考查规则。

Python中变量名可以包括字母、数字、下划线,但是数字不能做为开头,系统关键字不能做变量名使用,除了下划线之个,其它符号不能做为变量名使用,Python的变量名是区

解析:

C

【详解】

本题主要考查规则。

Python中变量名可以包括字母、数字、下划线,但是数字不能做为开头,系统关键字不能做变量名使用,除了下划线之个,其它符号不能做为变量名使用,Python的变量名是区分大小写的。

因此C选项符合题意。

6.A

【详解】

本题考查Python程序段。

当程序运行后,小新依次输入92*,即a=9,b=2,c=*,则elifc==‘*’:

成立,执行print(a*b),结果为18,故本题选A。

解析:

A

【详解】

本题考查Python程序段。

当程序运行后,小新依次输入92*,即a=9,b=2,c=*,则elifc==‘*’:

成立,执行print(a*b),结果为18,故本题选A。

7.C

【详解】

本题考查计算机语言。

C++,VB,Python都属于高级程序设计语言。

机器语言则不是。

故本题选项C不属于高级程序设计语言。

解析:

C

【详解】

本题考查计算机语言。

C++,VB,Python都属于高级程序设计语言。

机器语言则不是。

故本题选项C不属于高级程序设计语言。

8.C

【详解】

本题考查的是python的变量命名。

python的变量名是由数字、字母、下划线组成,并且数字不能打头。

故选项C符合题意。

解析:

C

【详解】

本题考查的是python的变量命名。

python的变量名是由数字、字母、下划线组成,并且数字不能打头。

故选项C符合题意。

9.A

【详解】

本题主要考查Python模块的导入。

Python模块导入的关键字是import,故本题选A选项。

解析:

A

【详解】

本题主要考查Python模块的导入。

Python模块导入的关键字是import,故本题选A选项。

10.B

【详解】

本题主要考查Python文件操作函数。

open()是文件打开函数,read()、write()是文件读写函数;json.load()用于从json文件中读取数据,故本题选B选项

解析:

B

【详解】

本题主要考查Python文件操作函数。

open()是文件打开函数,read()、write()是文件读写函数;json.load()用于从json文件中读取数据,故本题选B选项。

11.D

【详解】

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

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

解析:

D

【详解】

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

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

12.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选项。

13.B

【详解】

本题主要考查Python表达式的运算。

Python中取余符号是“%”,“==”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2==0,故本题选B选项。

解析:

B

【详解】

本题主要考查Python表达式的运算。

Python中取余符号是“%”,“==”是用来判断两个对象的值是否相等,故判断n是否为偶数的表达式是n%2==0,故本题选B选项。

14.A

【详解】

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

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

解析:

A

【详解】

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

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

15.D

【详解】

本题主要考查Python表达式的运算。

a=2,b=3,b-a>0值为True,则表达式not(b-a>0)值是False,故本题选D选项。

解析:

D

【详解】

本题主要考查Python表达式的运算。

a=2,b=3,b-a>0值为True,则表达式not(b-a>0)值是False,故本题选D选项。

二、程序填空

16."0"<=s[i]<="9"或s[i]in"0123456789”sum=sum+a[i]*(i+1)ydm=a[9]

【详解】

本题主要考查Python程序执行与调试。

①变量s保存商品仓库物品代码,若s[i]是数字则进入循环判断,否则跳过,故此处判断条件是"0"<=s[i]<="9"或s[i]in"0123456789”。

②校验码由前面9个X计算得到,计算方法为:

从左边开始,第1个数字乘以1加上第2个数字乘以2……依次类推,直到加上第9个数字乘以9,用变量sum统计,故此处填sum=sum+a[i]*(i+1)。

③变量sdm是计算得到的校验码,变量ydm是输入的校验码,此处需要将校验码a[9]赋给变量ydm,故填ydm=a[9]。

17.day=int(s[8:

])或day=int(s[-2:

])0,month-1isleapandmonth>2year%4==0andyear%100!

=0oryear%400==0

【详解】

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

①2020年是闰年,2月是29天,故“2020-05-20”这一天是这一年的第31+29+31+30+20=141天。

②变量s是字符串型,下标从0开始,此处是将输入日期中的天取出来放到变量day中,可以使用切片操作:

从左边开始截取,也可以从右边截取,故此处填day=int(s[8:

])或day=int(s[-2:

])。

③通过循环将前month-1个月的天数加起来,故变量i的范围是0到month-1,故填0,month-1。

④变量isleap标记是不是闰年,如果isleap值为真且month>2,则sum需要递增1,故填isleapandmonth>2。

⑤由题干闰年判断条件,可知加框处应改为year%4==0andyear%100!

=0oryear%400==0。

18.①a(i)=Asc(tmp)-64或a(i)=Asc(tmp)-Asc("A")+1②i–m+1Toi–m+k③t=(c(i)–1)Mod26+1

【详解】

本题考查乘法运算规则的理解以及转置矩阵中行列数据的读取。

(1)根据算法描述,图中

(1)处的值为15×5+14×1+0×2+0×9=89。

(2)程序先随机生成数组b,其下标为1到k×k,并以行列的形式显示在列表框list2中(即为转置矩阵),然后读取大写字符串s中的每个字符,并将每个字符转换成相应字母表中的位置存储在数组a中。

代码①处为字符转成相应的字母表中位置值,下方代码将a(i)输出在列表框listl中,故此处应获取a(i)的值。

根据题干描述“字符A~Z对应数值1~26”,此处为将tmp获取的字符通过Asc函数进行转换,语句为“a(i)=Asc(tmp)-64”,还可以是“a(i)=Asc(tmp)-Asc(″A″)+1”。

代码②处为循环变量j的取值范围,根据乘法规则,变量j的范围是每一段中的1到k之间的值,需要获取每一段的起始位置下标,结合上文得到的m值,可得循环变量的范围是“i-m+1Toi-m十k”。

代码③处是将计算结果c(i)按原长度转换成相应大写字符,计算结果要求除以26取余,若直接写成c(i)Mod26,则导致数值26的结果为0,因此需要先减1,Mod后再加1这样的处理技巧,因此答案为“(c(i)-1)Mod26+1”。

19.total=0i%3==2andi%5==3andi%7==2a[j]

【详解】

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

①变量total用来统计有多少种情况,初始值为0,第一空填total=0。

②当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个,即if判断条件为i%3==2andi%5==3andi%7==2,满足if条件时,将该值加到列表a中,故第二空填i%3==2andi%5==3andi%7==2。

③最后通过for循环输出所有可能的数,用变量j控制,故第三空填a[j]。

20.pw=input("请输入密码:

")

password="123456"

i=1

while(i<=3):

ifpw==password:

print("恭喜你进入系统!

")

break

else:

print("请重新尝试:

",i)

pw=input("请输入密码:

")

i=i+1

【详解】

本题主要考查程序设计。

可以通过Python程序设计语言实现题干要求,可以通过while循环控制三次机会,使用if条件分支结构判断是否输入正确,具体代码如下:

pw=input("请输入密码:

")

password="123456"

i=1

while(i<=3):

ifpw==password:

print("恭喜你进入系统!

")

break

else:

print("请重新尝试:

",i)

pw=input("请输入密码:

")

i=i+1

21.n/(2*n-1)或n/(n*2-1)i/(2*i-1)或i/(i*2-1)

【详解】

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

①分析数列可知,分子第n项是n,分母第n项是2*n-1,故该数列的通项公式f(n)=n/(2*n-1)或n/(n*2-1)。

②此处是对前n项进行求和,变量是i,使用语句s=s+i/(2*i-1)或s=s+i/(i*2-1),故此处填i/(2*i-1)或i/(i*2-1)。

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

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2