python二级模拟卷2程序填空阅读填空程序试题.docx

上传人:b****8 文档编号:10101136 上传时间:2023-02-08 格式:DOCX 页数:35 大小:1.51MB
下载 相关 举报
python二级模拟卷2程序填空阅读填空程序试题.docx_第1页
第1页 / 共35页
python二级模拟卷2程序填空阅读填空程序试题.docx_第2页
第2页 / 共35页
python二级模拟卷2程序填空阅读填空程序试题.docx_第3页
第3页 / 共35页
python二级模拟卷2程序填空阅读填空程序试题.docx_第4页
第4页 / 共35页
python二级模拟卷2程序填空阅读填空程序试题.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

python二级模拟卷2程序填空阅读填空程序试题.docx

《python二级模拟卷2程序填空阅读填空程序试题.docx》由会员分享,可在线阅读,更多相关《python二级模拟卷2程序填空阅读填空程序试题.docx(35页珍藏版)》请在冰豆网上搜索。

python二级模拟卷2程序填空阅读填空程序试题.docx

python二级模拟卷2程序填空阅读填空程序试题

python二级模拟卷2程序填空阅读填空程序试题

一、程序填空

1.某品牌手机第一年销量为20000台,假设平均每年的销量比上一年增加68%,请问几年后能使总销量达到60000台。

下面的程序能实现上述的功能,请将缺失的代码补充完整。

total=every_year=20000

year=1

while__________________:

every_year+=____________

total+=every_year

year+=1

print(year)

2.请在空格处填写正确的代码,使程序完善。

实现功能:

用辗转相除法求解两个正整数的最大公约数。

x=int(input('请输入第一个正整数:

'))

y=int(input('请输入第二个正整数:

'))

m=max(x,y)#找出x,y中的最大值

n=min(x,y)#找出x,y中的最小值

r=m%n#求得最大值除以最小值后的余数

whiler!

=0:

#如果余数不等0,则进行以下循环

m=________#把最小值赋给m

n=_________#把余数赋给n

r=m%n#求得最大值除以最小值后的余数

print('这两个数的最大公约数为:

',______)

input("运行完毕,请按任意键退出....")

3.请在空格处填写正确的代码,使程序完善。

实现功能:

绘制y=x2-2x+1的图像

#加载numpy模块并限简洁的别名为np

importnumpyasnp

#加载matplotlib.pyplot模块并限简洁的别名为plt

importmatplotlib.pyplotasplt

#x在-7到9之间,每隔0.1取一个点

x=np.arange(-7,9,0.1)

_____=x**2-2*x+1

plt.plot(x,________)

plt.title('y=x*x-2*x+1')

plt.xlabel('x')

plt.ylabel('y')

plt._________

4.完善程序。

以下是计算S=1+6+11+…+101的程序代码。

请你在

处填写正确的语句。

s=0

k=1

while(k<=101)

__

s=0

k=1

while(k<101):

k=k+5

s=s+k

print(s+1)

5.编写程序,找到并输出100以内的素数。

6.分析完善程序

[背景知识]为了保障空气质量,减少雾霾,某市决定当空气污染严重时,实行汽车单双号限行,违反规定的车辆将予以处罚。

如何让高清摄像头自动判断车牌的单双号,交警犯了愁,他需要编程高手的你帮忙,完善下面的程序。

(提示:

①所有车牌号中都含有数字,并且车牌号的长度都是6;②以车牌中最后一位阿拉伯数字的奇、偶来决定单双号。

)如:

请根据上述算法描述补全代码

s=input("车牌号s=")

n=6

x=s[n-1:

n]

whilex.isdigit()==False:

x=s[n-1:

n]

if②==0:

print(“双号”)

else:

print(“单号”)

(提示:

s[n:

m]的功能:

从字符串s的

下标为n的元素开始,截取到下标为m-1的元素。

例如:

s="12345",s[2:

4]="34"。

s.isdigit):

判断是否为数字。

(1)根据题意,程序中空白①处应填写:

______

(2)根据题意,程序中空白②处应填写:

______(填:

A/B/C/D)。

A.int(x)/2==0B.int(x)%2==0C.int(x)%2=0D.int(x)%2!

=0

7.程序分析题

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

foriinrange(6):

s=s+a[i]

ifa[i]>max:

max=a[i]

ifa[i]

min=a[i]

aver=()/4

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

A.EntryB.LabelC.FrameD.Button

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

(3)下列程序代码片段对应于算法描述中的第2步至第4步。

请填写片段中空白处的表达式填写完整________

8.利用for循环,分别计算1--100中奇数的和、偶数的和。

9.输入三个同学的成绩,然后大到小排列。

10.输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。

11.编写一个程序,判定用户输入的两个数a和b,如果用户输入的第一个数大,则两数互换,否则原样输出。

12.操作说明:

打开文件“Y:

/2/2.py”,在代码窗口指定位置<1>、<2>处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。

以下程序段的功能是:

输入一个正整数n(1至100),输出它的约数的个数。

s=0

n=int(input(“请输入一个正整数:

”))

ifn<1orn>100:

exit#输入的数不符合要求,退出

foriinrange(1,n+1):

ifn//i=0:

___<1>

s=s+i<2>

print(“约数的个数是:

”,s)

13.操作说明:

编写一个程序实现以下功能,将程序以“Y:

/3/3.py”作为文件名保存。

题目:

设计100以内的数中能同时被3或5整除的个数。

14.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。

其内容是:

公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?

(1)请在空格处填写正确的代码,使程序完善实现以下功能。

money=100#一共100文钱

num=100#一共100只鸡

cock_price=5#公鸡价格5文

hen_price=3#母鸡价格3文

threechick_price=1#3只小鸡1文

forcock_numinrange(1,_______):

#公鸡只数可能为1-20

forhen_numinrange(1,_________):

#母鸡只数可能为1-33

forchick_numinrange(1,101):

#(3小鸡)只数可能为1-100

money1=cock_num*cock_price+hen_num*hen_price+chick_num/threechick_price

num1=cock_num+hen_num+chick_num

ifmoney1==moneyandnum1==num:

print(cock_num,hen_num,__________)

input("运行完毕,请按回车键退出...")

(2)运行程序,运行结果如图所示。

15.“百鸡百钱”问题是一个有名的数学问题,出自《张丘建算经》。

其内容是:

公鸡5文钱1只,母鸡3文钱1只,小鸡3只1文钱,用100文钱买100只鸡,其中公鸡、母鸡和小鸡都必须要有,问公鸡、母鸡和小鸡各多少只?

打开文件“考生文件夹\644\百鸡百钱.py”,完善程序实现以下功能并保存。

(1)请不要更改源程序的结构,删除原题里的①、②、③。

填写正确的代码,使程序完善。

(2)运行程序,运行结果如图所示。

#请不要更改源程序的结构,删除原题里的①、②、③。

填写正确的代码,使程序完善

money=100#一共100文钱

num=100#一共100只鸡

cock_price=5#公鸡价格5文

hen_price=3#母鸡价格3文

threechick_price=1#3只小鸡1文

forcock_numinrange(1,money//cock_price+1):

#公鸡只数可能为1-20

forhen_numinrange(1,①________):

#母鸡只数可能为1-33

forchick_numinrange(1,②________):

#(3小鸡)只数可能为1-100

money1=cock_num*cock_price+hen_num*hen_price+chick_num*threechick_price

num1=cock_num+hen_num+chick_num*3

ifmoney1==moneyandnum1==num:

print(cock_num,hen_num,③________)#(③小鸡数)

input("运行完毕,请按回车键退出...")

16.编写程序。

如图所示的算法,请用Python程序写出实现该算法相应的代码。

17.已知6月份10位技术考试成绩:

1

2

3

4

5

6

7

8

9

10

78

88

89

90

83

76

75

98

100

65

技术老师想统计出80分(含80)以上的人数,请完善程序,代码如下:

a=[78,88,89,90,83,76,75,98,100,65]

______

sum=0

foriinrange(n):

ifa[i]>=80:

________

print(sum)

执行上述程序段后,输出的内容是______

18.阅读程序。

观察使用随机数求解百钱白鸡问题的代码并回答问题。

百千白鸡问题是经典的数学问题,原题为“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?

”翻译过来,意思是公鸡一个五块钱,母鸡一个三块钱,小鸡三个一块钱,现在要用一百块钱买一百只鸡,问公鸡、母鸡、小鸡各多少只?

importrandom

whileTrue:

x=random.randrange(0,20)

y=random.randrange(0,33)

z=random.randrange(0,100)

if5*x+3*y+z/3==100andx+y+z==100:

print('公鸡',x)

print('母鸡',y)

print('小鸡',z)

(1)Python中导入库文件的命令是________。

(2)random.randrange(0,20)生成的随机数的范围是_________

(3)如果不想写类似random.randrange(0,20)这么长的句子,可以修改程序中的第一行为

________

(4)whileTrue的作用是______。

(5)如果whileTrue造成程序无法停止,我们可以在程序中添加一行_________。

19.(项目情境)递归就是自己调用自己,它是设计和描述算法的一种有力工具,常常用来解决比较复杂的问题。

为求解规模为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)

20.模拟一个简单计算器,实现如下功能:

输入两个整数和一个运算符(加、减、乘、除),进行算术运算,并输出运算结果。

程序运行时,依次输入第一个数、运算符和第二个数,输出运算结果。

当输入的运算符是加减乘除(+-*/)四种以外的符号时,则输出“运算符不正确”。

当进行除法运算时,如果除数为“0”,提示输出“除数不能为0!

”。

Python程序实现如下,在划线处填入合适的代码。

a=int(input("请输入第一个数:

"))

fh=input("请输入运算符:

")

b=int(input("请输入第二个数:

"))

flag=True

s=____

iffhins:

iffh=="+":

c=a+b

eliffh=="-":

c=a-b

eliffh=="*":

c=a*b

else:

if____

print("除数不能为0!

")

flag=False

else:

c=a/b

ifflag==True:

print("运算的结果为:

"+____)

else:

print("运算符不正确")

21.若两个素数之差为2,则该对素数称为双胞胎数,如3,5就是一对双胞胎数。

编写python程序,实现如下功能:

输入n的值,统计显示n以内的所有双胞胎数。

程序运行界面如图所示:

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

importmath

defisprime(x):

______

foriinrange(2,int(math.sqrt(x))+1):

ifx%i==0:

f=False

returnf

n=int(input("请输入一个正整数n:

"))

c=0

k=3

whilek<=n-2:

ifisprime(k)and______________:

c+=1

print("第"+str(c)+"对双胞胎数:

",k,'和',k+2)

_______

print("共有"+str(c)+"对双胞胎数")

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

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

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

22.某市普通高中选课数据如图1所示,学生从地理、化学、生物等科目中选择三门作为高考选考科目,“1”表示已选择的选考科目。

使用Python编程分析每所学校各科目选考的总人数、全市各科选考总人数及其占比,经过程序处理后,保存结果如图2

图1

图2

实现上述功能的Python程序如下:

importpandasaspd

importitertools

#读数据到pandas的DataFrame结构中

df=________(”xk73.csv”,sep=‘.’,header=‘infer’,encoding=‘utf-8’)

km=[‘物理’,‘化学’,‘生物’,‘政治’,‘历史’,‘地理’,‘技术’]

#按学校分组计数

sc=df.groupby(‘___________’,as_index=False).count()

#对分组计数结果进行合计,合计结果转换为DF结构并转置为行

df_sum=pd.DataFrame(data=sc.sum()).T

df_sum[‘学校代码’]=‘合计’

#增加"合计"行

result=sc.append(df_sum)

#百分比计算

df_percent=df_sum

df_percent[‘学校代码’]=‘比例’

forkinkm:

per=df_percent.at[0,k]/zrs

df_percent[k]=per

#增加"百分比"行

result=result.append(df_percent)

#删除"姓名"列

result=______________

#修改"学生编号"为"总人数"

result=result.rename(columns={‘学生编号’:

‘总人数’})

#保存结果,创建Excel文件.生成的Excel文件

result.to_excel("学校人数统计.xlsx")

(1)请在划线处填入合适的代码:

(2)加框处语句的作用是__________________

23.“枚举算法”又称为“穷举法”,其基本思想是:

一一列举出所有可能的解,并验证每个可能的解是否是真正的解,若是,就采纳,否则,就抛弃。

小明利用枚举算法解决“百元买百鸡”问题。

用100元钱买100只鸡,公鸡,母鸡,小鸡都要有。

公鸡5元1只,母鸡3元1只,小鸡1元3只。

请问公鸡,母鸡,小鸡各应该买多少只?

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

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

c=0

forxin____①:

foryinrange(1,33):

z=100-x-y

if______②:

print("公鸡:

",x,"母鸡:

",y,"小鸡:

",z)

_____③

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

24.水仙花数是指一个三位数,它的每个位上的数字的3次方之和就等于它本身,例如:

1**3+5**3+3**3=153。

这类三位数也被叫做自恋数、自幂数或者阿姆斯特朗数。

[问题求解]设这个数存放于变量x中,变量g、s、b分别存放个位、十位、百位上的数。

需得分离数字得到每位上的数,即将变量g、s、b表示为x的形式。

请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。

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

")

forxin___(100,1000):

b=x//100

s=(x//10)___

g=___

Ifx=(b**3+s**3+g**3):

print(___)

25.阅读程序。

分析以下Python程序并回答问题。

who='我的'

action='是'

destination='镜像世界'

number='153'

code='通行密码'

print(who+destination+code+action+str(number))

(1)变量who的数据类型_______________。

(2)类似number的数据类型______________。

(3)print语句输出的结果是______________。

(4)str(number)的作用是_________。

(5)“+”在程序中的作用是____________。

26.阅读程序。

分析以下两段Python程序并回答问题。

#程序1

i=1

whilei<101:

print('把这句话打印100遍')

i+=1

#程序2

i=100

whilei:

print('把这句话打印100遍')

i=i-2

(1)在程序1中,i+=1这句话的含义是______________。

(2)在程序1中,‘把这句话打印100遍’实际输出了_____遍。

(3)在程序2中,i的初值是___。

(4)在程序2中,‘把这句话打印100遍’实际输出了_____遍。

(5)在程序2中,whilei的含义是_________。

27.使用Python自身提供的IDLE集成开发环境录入以下代码及调试

运行,检测结果。

#鸡兔同笼

forxinrange(1,23):

y=35-x

if4*x+2*y==94:

print("兔子有%s只,鸡有%s只"%(x,y))

特别提示:

代码录入完毕,调试运行,检测错误,讨论错误原因,上网查找错误格式的处置办法,直至能正确输出结果。

28.请编写Python程序,实现如下功能需求:

1)程序运行后,给出文字提示:

“请输入一个正整数:

2)输入一个整数n按回车后,程序输出从1-n所有整数中既是3的倍数又是5的倍数的数。

3)不要超过5行代码。

程序运行举例:

29.小明用Python语言写了一个货币兑换程序如下:

(1)参数currency指:

____________。

(2)该程序用了哪一种算法结构:

_____________。

(3)输出结果为“50$=325.25人民币”。

则代码应该如何编写:

____________。

30.(最大公约数)用辗转相除法求两个正整数的最大公约数。

代码如下:

defgcd(m,n):

r=

whiler!

=0:

m=n

n=

return

a=int(input(‘请输入a的值:

’))

b=int(input(‘请输入b的值:

’))

print(‘最大公约数是:

')

填空:

________________________________________

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

 

一、程序填空

1.total<60000every_year*0.68

【详解】

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

①由题干可知,while循环条件是总销量total小于60000,故第一空填total<60000。

②平均每年的销量比上一年增加68%,即every_year+=every_year*0.68,故第二空填every_year*0.68。

2.nrn

【详解】

本题考查的是Python循环语句。

辗转相除法:

用较大数除以较小数,再用出现的余数(第一余数)去除除数,再用出现的余数(第二余数)去除第一余数,如此反复,直到最后余数是0为止。

如果是求两个数的最大公约数,那么最后的除数就是这两个数的最大公约数。

由n=min(x,y)可知最小值为n,故①处为n,由r=m%n可知余数为r,故②处为r,最后的除数是n(即最大公约数为n),故③处为n。

3.yyshow()

【详解】

本题主要考查Python程序绘制图

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

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

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1