NCTPython编程一级模拟卷2含答案wordWord文件下载.docx
- 文档编号:19775441
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:13
- 大小:828.54KB
NCTPython编程一级模拟卷2含答案wordWord文件下载.docx
《NCTPython编程一级模拟卷2含答案wordWord文件下载.docx》由会员分享,可在线阅读,更多相关《NCTPython编程一级模拟卷2含答案wordWord文件下载.docx(13页珍藏版)》请在冰豆网上搜索。
sum+=i
i+=1
print("
sum="
sum)
A.sum=9B.sum=10C.sum=18D.sum=19
8.下列Python程序段的运行结果是()
ifi%2==0:
print(‘sum=’,sum)
A.sum=18B.sum=20C.sum=22D.sum=30
9.Python中,可以输出helloworld的是()
A.printf(“helloworld”)
B.output(“helloworld”)
C.Print(“hello+world”)
D.print(“helloworld”)
10.下列选项中,不能作为python程序变量名的是()
A.abcB.abc123C.123abcD.abc__123
11.已知字符串变量x的值是“H”,字符“A”的ASCII值是65,则python表达式chr(ord(x)+2)的值是()
A.‘I’B.‘J’C.73D.74
12.关于python程序设计语言,下列说法不正确的是()。
A.python源文件以***.py为扩展名
B.python的默认交互提示符是:
>
C.python只能在文件模式中编写代码
D.python具有丰富和强大的模块
13.关于python程序设计语言,下列说法不正确的是()
A.python是一种解释型、面向对象的计算机程序设计语言
B.python支持Windows操作系统,但不支持Linux系统
C.python源文件以***.py为扩展名
D.python文件不能直接在命令行中运行
14.下列Python表达式的值不是2的是()。
A.3%2B.5//2C.1*2D.1+3/3
15.下列选项中,可以作为Python程序变量名的是()
A.a/bB.abC.a+bD.a-b
二、程序填空
16.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。
为求解规模为N的问题,设法将它分解成规模较小的问题,从小问题的解容易构造出大问题的解,并且这些规模问题较小的问题也能采用同样的分解方法,分解成规模更小的问题,并能从这些更小问题的解构造出规模较大问题的解。
一般情况下,规模N=1时,问题的解是已知的。
已知:
从1到n的连续自然数相乘的积、叫做阶乘、用符号n!
表示。
如5!
=1×
2×
3×
4×
5,规定0!
=1。
我们用递归算法可以较容易求n的阶乘。
求n的阶乘算法可以描述如下:
n!
=n*(n-1)!
(n-1)!
=(n-1)*(n-2)!
(n-2)!
=(n-2)*(n-3)!
2!
=2*1!
1!
=0!
0!
=1
如果把n!
写成函数形式,即f(n),f(n)=n*f(n-1)。
如f(5)就是表示5!
,求5!
的过程可以写成如下形式:
f(5)=5*f(4)f(4)=4*f(3)f(3)=3*f
(2)f
(2)=2*f
(1)f
(1)=1
(问题求解)在python中用递归算法求1!
+2!
+……+n!
(n的值为整数,从键盘输入)。
请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。
deff(n):
ifn==0:
return1
else:
return_________
s=0
n=int(input("
请输入n:
"
))
foriin_______:
s=________
print(s)
17.辗转相除法,又称欧几里德算法,用于计算两个正整数m、n的最大公约数。
它是已知最古老的算法,其可追溯至公元前300年前。
辗转相除法的算法步骤是,对于给定的两个正整数m、n(m>
n),用m除以n得到余数r,若余数r不为0,就将n和r构成新的一对数(m=n,n=r),继续上面的除法,直到余数为0,这时m就是原来两个数的最大公约数。
因为这个算法需要反复进行除法运算,故被形象地命名为“辗转相除法”。
小曲设计了辗转相除法的算法,请根据下面算法回答问题。
描述一
描述二
描述三
①输入两个正整数m,n(m>
n);
②计算m除以n所得的余数r;
③m=n,n=r;
④若r=0,则m,n的最大公约数等于m;
否则转到步骤②;
⑤输出最大公约数m;
⑥结束。
(1)描述一是________描述法;
描述二是流程图描述法;
描述三是计算机程序语言描述法。
(2)在描述三中代码4到6行作用是__________。
(3)在描述三程序设计中,补充代码第8行划线处为__________。
18.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
defgcd(m,n):
r=
whiler!
=0:
m=n
n=
return
a=int(input(‘请输入a的值:
’))
b=int(input(‘请输入b的值:
print(‘最大公约数是:
'
)
填空:
________________________________________
19.请编写一个密码登陆系统,接收用户从键盘输入的密码和你自己的密码进行比对,如果正确就显示“恭喜你进入系统”如果不正确让用户重新输入,有三次机会。
20.计算机解决问题的过程为“分析问题——设计算法(流程图)——编写程序——调试程序”,
请输入以下代码,自己输入数据运行,结果截图提交
21.冠军在A、B、C、D四位同学中。
A说:
“不是我”,B说:
“是C”,C说:
“是D”,D说:
“C说的不对”,已知四人中有一人说了假话。
判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['
A'
'
B'
C'
D'
]#设置选手列表
foriin__________:
#循环读取选手编号
cond=(i!
='
)+(i=='
)+(i=='
)+(i!
)#查找符合条件的选手
ifcond==_____:
#说真话是否是3人
print("
冠军是:
_________)#输出冠军
input("
运行完毕,请按回车键退出..."
)
【参考答案】***试卷处理标记,请不要删除
1.C
【详解】
本题考查的是python中表达式相关知识。
在Python算数运算中,*代表乘法,**代表乘方,故4**3=4*4*4=64,故选项C正确。
解析:
C
2.C
本题主要考查Python基本运算。
Python比较运算优先级高于逻辑运算,因此C选项正确。
【点睛】
3.A
本题主要考查Python表达式的运算。
a=2,b=5,a>
b值为False,b>
3值为True,逻辑运算符“And”两边都为真,表达式的值才为真,故表达式a>
3的值是F
A
3的值是False,故本题选A选项。
4.A
本题主要考查Python程序的执行。
x=2没有发生改变,只是输出x+1、x+2的值,故本题选A选项。
5.C
变量i的范围是从1~20,每次递增3,故x=0+1+4+7+10+13+16+19=70,输出x为70,故程序段运行的结果是70,故本题选C选项。
6.A
本题主要考查Python输入函数。
在Python中,input()是输入函数,print()是输出打印函数,bool()函数用于判断真假,abs()求绝对值函数,故本题选A选项。
7.C
本题考查的是Python程序。
程序分析过程如下:
i=0sum=0
i=0<
100%3==0sum=0+0=0i=0+1=1
i=1<
101%3==0不成立i=1
101%3==0不成立i=1+1=2
i=2<
102%3==0不成立i=2+1=3
i=3<
103%3==0sum=0+3=3i=3+1=4
i=4<
104%3==0不成立i=4+1=5
i=5<
105%3==0不成立i=5+1=6
i=6<
106%3==0sum=3+6=9i=6+1=7
i=7<
107%3==0不成立i=7+1=8
i=8<
108%3==0不成立i=8+1=9
i=9<
109%3==0sum=9+9=18i=9+1=10
i=10<
10不成立
输出sum=18,故答案C正确。
8.B
本题考查Python语句。
根据while可知,当ifi%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum
B
根据while可知,当ifi%2==0成立时,sum+=i,i=2,4,6,8时,If条件成立,故sum=2+4+6+8=20,又根据print(‘sum=’,sum),则最后运行结果是sum=20,故本题选B。
9.D
本题主要考查Python输出语句。
Python输入函数是print(),故可以输出helloworld的是print(“helloworld”),故本题选D选项。
D
10.C
本题考查的是python的变量命名。
python的变量名是由数字、字母、下划线组成,并且数字不能打头。
故选项C符合题意。
11.B
本题主要考查Python字符函数。
ord函数用于将字符转换为整数,chr函数接受一个数字(应为ASCII码)并返回字符。
则python表达式chr(ord(x)+2)=chr(ord
则python表达式chr(ord(x)+2)=chr(ord(H)+2)=chr(74)=‘J’,故本题选B选项。
12.C
本题主要考查Python程序设计语言。
python源文件以***.py为扩展名,python的默认交互提示符是:
,python能在文件模式中编写代码,也能在交互模式中编写代码,p
,python能在文件模式中编写代码,也能在交互模式中编写代码,python具有丰富和强大的模块,故本题选C选项。
13.B
python是一种解释型、面向对象的计算机程序设计语言;
python支持Windows操作系统,也支持Linux系统;
python源文件以***.
python源文件以***.py为扩展名;
python文件不能直接在命令行中运行,故本题选B选项。
14.A
3%2=1,5//2=2,1*2=2,1+3/3=2,故本题选A选项。
15.B
本题主要考查Python变量的命名。
变量的命名规则有:
只能以字母或下划线开头,不能包含特殊符号,不能是关键字。
故ab可以作为Python程序变量名,故本题选B选项。
16.n*f(n-1)range(1,n+1)s+f(i)
本题主要考查Python程序的执行与调试。
①此处是定义递归函数f(n),由题干,当n=0时,返回1,否则返回n*f(n-1),故此处填n*f(n-1)。
②用递归算法求1!
,故变量i的范围应是1—n,foriinrange(1,n+1)表示i的范围是[1,n],故此处填range(1,n+1)。
③循环体实现累加,将每一项阶乘f(i)加到s中,故此处填s+f(i)。
17.自然语言确保m>
=nr!
=0
本题主要考查算法及Python程序实现。
①描述一是自然语言描述法;
②在描述三中代码4到6行,当m<
n时,交换m、n的值,否则跳过,故作用是确保m>
=n。
③由题干可知,循环条件是余数r不等于0,故代码第8行划线处为r!
=0。
18.m%nrr=m%nngcd(a,b)
本题主要考查Python程序设计。
①首先对m和n求余得到r,判断r是否为0,故此处填m%n。
②如果r为0则结束,否则更新m的值为n,n的值为r。
③此处用更新后的m和n继续求r,继续判断,故填r=m%n。
④循环结束后当r=0时,n即为最大公约数,故填n。
⑤输入a、b的值,使用函数gcd求a和b的最大公约数,故填gcd(a,b)。
19.pw=input("
请输入密码:
password="
123456"
i=1
while(i<
=3):
ifpw==password:
恭喜你进入系统!
break
请重新尝试:
i)
pw=input("
i=i+1
本题主要考查程序设计。
可以通过Python程序设计语言实现题干要求,可以通过while循环控制三次机会,使用if条件分支结构判断是否输入正确,具体代码如下:
pw=input("
20.
运行结果如下:
21.champion3i
①champion是选手编号列表,此处是循环读取选手编号,使用foriinchampion,故此处填champion。
②四人中有一人说了假话,即3个人说真话,即当cond=3时,则表示找到了谁是冠军,故此处填3。
③当cond是3时,i即为冠军,故此处填i。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- NCTPython 编程 一级 模拟 答案 word