NCT青少年编程能力等级测试Python编程三级-模拟卷2(含答案)

NCT青少年编程能力等级测试Python编程三级-模拟卷2(含答案),第1张

参考答案在文章后边部分,请看到后半部分的答案分割线,非常感谢哦!

NCT-Python编程三级-模拟卷3(含答案图文

一、选择题

1.在Python中,字符串运算符“+”的作用是把字符串进行连接,则表达式"20"+"19"+"20+19"的运算结果是(  )

A.392019 B.201939 C.201920+19 D.3939

2.在VB中,下列与表达式Len("python")+20的值相等的是(    )

A.Int(Rnd * 26)+1 B.Val("20")+16 mod 9

C.Mid("Hello2019",6,2)+"6" D.abs(Sqr(16)– 30)

3.有如下python程序段

n=int (input("请输入n值: "))

x=n ; y=0

if x>0:

    y=y+1

elif x<0:

    y=y-1

print (y)

执行上述语句,下列说法不正确的是(   )

A.若输入-1,则输出y值为-1 B.若输入0,则输出y值为-1

C.若输入1,则输出y值为1 D.若输入2,则输出y值为1

4.李老师要建立一个“Python 程序设计”课程的学习网站,下面比较合理的制作流程是 :(  )

①规划网站结构,并确定设计风格 ②发布网站 ③网页制作 ④了解网站运行环境,选择网站开发工具 ⑤确定网站主题,收集素材

A.①⑤③④② B.⑤①④②③ C.①④⑤②③ D.⑤①④③②

5.可以被计算机直接执行的语言是(    ) , Python语言属于(    )语言。

A.机器,高级 B.高级,汇编 C.高级,机器 D.汇编,高级

6.下列序列拼接错误的是()

A.list = [ None ] * 4

B.msg = “Python”, ”语言”

C.tup = “/”.join( ( “123”, ”234” ) )

D.set = { 1, 2, 3 } + { 4, 5, 6 }

7.在下面的python程序中,变量b和c的值为()。

A.b为6,c为6 B.b为6,c为8 C.b为8,c为8 D.b为8,c为6

8.下列不是Python中所有循环必须包含的是(  )。

A.冒号 B.循环次数 C.循环体 D.缩进

9.在Python中以下语句正确的是(  )。

A.51jb= "51jb" B.for= "51jb" C.j,b=b,j D.//这是一段测试代码

10.下列选项中,不属于Python合法变量名的是(   )

A.int32 B.40xl C.self D._name_

11.小林编写一段文件读写 *** 作代码,文件如图,代码段如下:

file=open('ceshi.txt','w')

file.write("python is a programming language.")

file.close( )

file=open('ceshi.txt','r')

print(file.read( ))

该代码段运行后,输出的结果为(   )

A.IA Distributed System Based on Python.

B.python is a programming language.

C.IA Distributed System Based on Python. python is a programming language.

D.程序编译错误,不会输出结果

12.已知a = 6,b = -4,则Python表达式 a / 2 + b % 2 * 3 的值为()

A.3 B.3.0 C.5 D.5.0

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.下列语言中(   )不属于高级语言

A.python B.VC C.JAVA D.汇编语言

二、程序填空

16.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:1**3+5**3+3**3=153。这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。

[问题求解]设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。

print ("三位数之内的水仙花是:")

for x in___(100,1000):

b=x//100

s=(x//10)___

g=___

If x=(b**3 +s**3+g**3):

print(___)

17.“枚举算法”又称为“穷举法”,其基本思想是:一一列举出所有可能的解,并验证每个可能的解是否是真正的解,若是,就采纳,否则,就抛弃。

小明利用枚举算法解决“百元买百鸡”问题。用100元钱买100只鸡,公鸡,母鸡,小鸡都要有。公鸡5元1只,母鸡3元1只,小鸡1元3只。请问公鸡,母鸡,小鸡各应该买多少只?

假设公鸡有X只,母鸡有Y只,小鸡有Z只。

以下Python程序段实现了“百元买百鸡”的功能,请补全①②③处代码。

c = 0

for x in  ____①     :

 for y in range(1,33):

  z = 100-x-y

  if  ______②        :

    print("公鸡:",x,"母鸡:",y,"小鸡:",z)

_____③     

print("共有买法",c,"种")

18.输入n,计算s=1!+2!+...+n!的未6位(不含前导0)。N<=1000000,n!表示前n个正整数之积。

19.编写程序,找到并输出100以内的偶数个数。

20.分析完善程序

某市出租车收费标准如下:

(1)3公里内(含3公里),收费8元

(2)超过3公里但未超过6公里部分,按1.5元/公里收费

(3)超过6公里部分,按2.25元/公里收费。

根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?

[算法分析]

假设总费用为p,则可以分段计算

p=8     ‘(s≤3)

p=1.5*(s-3)+8   ‘(3

p=2.25*(s-6)+1.5*3+8   ‘(s>6)

[参考代码]

a=float(input(“s=”))

if s <= 3 :

   p= 8

if           

   p=1.5*(s-3)+8

if s > 6 :

   p=2.25*(s-6)+1.5*3+8

print( p)

根据上述回答如下问题:

(1)本题采用的算法是________(填:解析法/枚举法/排序法/递归法)。

(2)程序代码中空白处应填写的条件是_______(填: A/B/C/D)。

A.33 and s<6   D.s>3 Or s<=6

21.程序分析题

学校举行校园歌手大赛,评委由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]

min=a[ i]

aver=(          )/4

(1)在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由______控件生成的。

A.Entry    B.Label      C.Frame  D.Button

(2)题目中算法描述采用的是__________A、自然语言B、伪代码 C、流程图 D、.N-S图

(3)下列程序代码片段对应于算法描述中的第2步至第4步。请填写片段中空白处的表达式填写完整________

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

一、选择题

1.C

【详解】

本题考查的是python语言。在python语言中,双引号之间是输出的是字符串。三对字符串之间都是原样输出。故选项C正确。

解析:C

【详解】

本题考查的是python语言。在python语言中,双引号之间是输出的是字符串。三对字符串之间都是原样输出。故选项C正确。

2.D

【详解】

本题考查的知识点是VB基本函数的应用。Len()函数功能是求字符串长度,返回数值型数据,所以Len("python")+20值为26。A选项:Rnd是产生0到1之间的随机数,不包括1,

解析:D

【详解】

本题考查的知识点是VB基本函数的应用。Len()函数功能是求字符串长度,返回数值型数据,所以Len("python")+20值为26。A选项:Rnd是产生0到1之间的随机数,不包括1,Int()函数功能是向下取整,所以Int(Rnd * 26)+1结果是一个0到26的随机数,不一定为26。A选项错误;B选项:Val()函数功能是讲字符串数据转换为数值型,mod是取余运算,所以Val("20")+16 mod 9值为27。B选项错误;C选项:Mid()函数功能是截取字符串,Mid("Hello2019",6,2)+"6"结果是字符串类型数据。C选项错误;D选项:Sqr()是求平方根函数,abs()是求绝对值函数,所以abs(Sqr(16)– 30)值为26。故正确答案为D选项。

3.B

【详解】

本题主要考查Python程序执行。分析程序可知,当x>0,执行y=y+1;当x<0,执行y=y-1;若输入0,则不满足if条件结构跳过,输出y值为0,故本题选B选项。

解析:B

【详解】

本题主要考查Python程序执行。分析程序可知,当x>0,执行y=y+1;当x<0,执行y=y-1;若输入0,则不满足if条件结构跳过,输出y值为0,故本题选B选项。

4.D

【详解】

本题考查的是网站制作流程相关知识。建立网站首先是要确定网站的主题,收集素材,规划网站,然后选择网站的开发工具进行网页制作,最后进行网站的发布。故选项D正确。

解析:D

【详解】

本题考查的是网站制作流程相关知识。建立网站首先是要确定网站的主题,收集素材,规划网站,然后选择网站的开发工具进行网页制作,最后进行网站的发布。故选项D正确。

5.A

【详解】

本题考查计算机语言。机器语言是机器能直接识别的程序语言或指令代码,无需经过翻译,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。汇编语言是任何一种用于电子计算机,微处理器,微

解析:A

【详解】

本题考查计算机语言。机器语言是机器能直接识别的程序语言或指令代码,无需经过翻译,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。汇编语言是任何一种用于电子计算机,微处理器,微控制器或其他可编程器件的低级语言,亦称为符号语言。高级语言是一种面向过程或对象的语言。可以被计算机直接执行的语言是机器语言,Python语言属于高级语言。故本题选A。

6.D

【详解】

本题主要考查Python序列拼接运算。set = {} 生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。

解析:D

【详解】

本题主要考查Python序列拼接运算。set = {} 生成的是字典类型,而不是集合类型,不支持使用+,故本题选D选项。

7.C

【详解】

本题考察赋值语句。

将6赋值给a,此时a为6;

将8赋值给c,此时c为8;

将c复制给b,此时b的值即为c的值,b为8;

将b赋值给a,此时a即为b的值,a为8。

故a为8,b为8,c

解析:C

【详解】

本题考察赋值语句。

将6赋值给a,此时a为6;

将8赋值给c,此时c为8;

将c复制给b,此时b的值即为c的值,b为8;

将b赋值给a,此时a即为b的值,a为8。

故a为8,b为8,c为8,故C选项正确。

8.B

【详解】

本题主要考查Python循环结构。Python中所有循环必须包含的是冒号、循环体、缩进。不是Python中所有循环必须包含的是循环次数,可能是while循环条件,故本题选B选项。

解析:B

【详解】

本题主要考查Python循环结构。Python中所有循环必须包含的是冒号、循环体、缩进。不是Python中所有循环必须包含的是循环次数,可能是while循环条件,故本题选B选项。

9.C

【详解】

本题主要考查Python语句。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。单行代码注释以#开始,语句j,b=b,j表示交换b与j的值,故本题选C选项。

解析:C

【详解】

本题主要考查Python语句。变量的命名规则有:只能以字母或下划线开头,不能包含特殊符号,不能是关键字。单行代码注释以#开始,语句j,b=b,j表示交换b与j的值,故本题选C选项。

10.B

【详解】

本题主要考查Python变量名。Python需要使用标识符给变量命名,需要注意如下规则:标识符可以由字符、数字、下划线(___)组成,其中数字不能开头。标识符不能是Python关键字(

解析:B

【详解】

本题主要考查Python变量名。Python需要使用标识符给变量命名,需要注意如下规则:标识符可以由字符、数字、下划线(___)组成,其中数字不能开头。标识符不能是Python关键字(又称为保留字),但可以包含关键字;区分大小写。因此B选项正确。

【点睛】

11.B

【详解】

本题主要考查Python文件读写 *** 作。首先打开ceshi.txt文件进行写 *** 作,写入python is a programming language.会覆盖之前的内容,故该代码段运行后

解析:B

【详解】

本题主要考查Python文件读写 *** 作。首先打开ceshi.txt文件进行写 *** 作,写入python is a programming language.会覆盖之前的内容,故该代码段运行后,输出的结果为python is a programming language.,故本题选B选项。

12.B

【详解】

本题主要考查Python表达式的运算。a=6,b=-4, a/2 + b%2*3 =6/2+(-4%2*3)=3.0+0=3.0,故本题选B选项。

解析:B

【详解】

本题主要考查Python表达式的运算。a=6,b=-4, a/2 + b%2*3 =6/2+(-4%2*3)=3.0+0=3.0,故本题选B选项。

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、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。

解析:D

【详解】

本题主要考查程序设计语言。python、VC、JAVA均属于高级语言,汇编语言属于低级语言,故本题选D选项。

二、程序填空

16.range    %10    x% 10或x-b*100-s*10或其它同等答案    x    

【详解】

本题考查的是Python程序设计。水仙花数是指一个三位数,故使用range函数遍历100~999;s存放的是十位数,故可以选对x取整后再除以10求余,故第二空应填%10(求余符号%);g是存放个位,直接除以10求余,或减去前面整百和整十的数,故第三空为:x% 10或x-b*100-s*10或其它同等答案;如果找到满足条件的数,则输出,故第四空为:x。

17.range(1,20)    5*x+3*y+z/3 == 100    c = c+1    

【详解】

本题考查的是python编程。X代表的是公鸡,公鸡5元一只,所以此处的range函数为range(1,20),左闭右开区间。if条件是满足三种鸡的总价格为100元的条件,故答案为5*x+3*y+z/3 == 100,注意这里是一个判断条件,用==表示。c代表的是有几种购买方案,当if条件满足时,即满足一种方案,执行方案数加1,c=c+1。

18.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)

19.c=0

for i in range(1,101):

     if i%2==0:

        c=c+1

print(c)

【详解】

本题主要考查程序设计。题干要求可通过Python程序设计实现,通过for循环以及if判断条件可统计出100以内的偶数个数,具体代码如下:

c=0

for i in range(1,101):

     if i%2==0:

        c=c+1

print(c)

20.解析法或解析    A    

【详解】

本题主要考查Python程序的执行与调试。①由算法分析可知,本题采用的算法是解析法或解析。②3公里内(含3公里),收费8元;超过3公里但未超过6公里部分,按1.5元/公里收费;超过6公里部分,按2.25元/公里收费,故此处填3

21.A    A    s-max-min    

【详解】

本题主要考查Python程序的执行与调试。①在引用tkinter模块进行界面设计的过程中,窗体中录入评委打分的对象是由Entry控件生成的(Entry 是Tkinter 用来接收字符串等输入的控件,该控件允许用户输入一行文字),故选A选项。②题目中算法描述采用的是伪代码,故选A选项。③从总分中s中去掉最高分max和最低分min,求出其他4位评委的平均分aver作为选手的最终得分,故此处填s-max-min。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/918946.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-16
下一篇 2022-05-16

发表评论

登录后才能评论

评论列表(0条)

保存