试题python真题程序填空阅读填空程序试题.docx

上传人:b****4 文档编号:3669571 上传时间:2022-11-24 格式:DOCX 页数:28 大小:1.06MB
下载 相关 举报
试题python真题程序填空阅读填空程序试题.docx_第1页
第1页 / 共28页
试题python真题程序填空阅读填空程序试题.docx_第2页
第2页 / 共28页
试题python真题程序填空阅读填空程序试题.docx_第3页
第3页 / 共28页
试题python真题程序填空阅读填空程序试题.docx_第4页
第4页 / 共28页
试题python真题程序填空阅读填空程序试题.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

试题python真题程序填空阅读填空程序试题.docx

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

试题python真题程序填空阅读填空程序试题.docx

试题python真题程序填空阅读填空程序试题

试题python真题程序填空阅读填空程序试题

一、程序填空

1.完善程序实现如下功能并保存:

有5个人坐在一起,第5个人说他比第4个人小3岁;第4个人说他比第3个人小3岁;第3个人说他比第2个人小3岁;第2个人又说他比第1个人小3岁;第1个人说他是38岁。

编写程序,计算出第5个人的年龄并显示。

defage(n):

ifn==1:

c=________

else:

c=age(n-1)-3

return________

print("第5人的年龄:

",age(________))

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

2.阅读程序。

分析条件语句的代码并回答问题。

(1)如果不能使用int()函数,那么变量s的类型将会变成______。

(2)如果你的期末成绩是85,你得到的评价将会是____________。

(3)如果你的期末成绩是55,你得到的评价将会是____________。

(4)如果你得到的评价是“还可以再提升”,你的期末成绩应该在_____和______之间。

(5)“程序中出现的所有else都可以替换为elif,程序效果一样”,这种说法是____(填“对”或“错”)的。

3.阅读程序。

分析下列切片相关程序并回答问题。

list2=[5,6,7,8,9]

print(list2[:

])

print(list2[2:

])

print(list2[:

2])

print(list2[1:

3])

print(list2[2:

4])

(1)程序第一个print的输出结果是______________。

(2)程序第二个print的输出结果是______________。

(3)程序第三个print的输出结果是______________。

(4)程序第四个print的输出结果是______________。

(5)程序第五个print的输出结果是______________。

4.阅读程序。

分析有关多项式的代码并回答问题。

求1!

+2!

+3!

+……+20!

的和。

n=0

s=0

t=1

forninrange(1,21):

t*=n

s+=t

print(s)

(1)n的作用是________________。

(2)s的作用是______________。

(3)t的初值必须赋值为1,这是因为_________。

(4)t*=n的等价语句是__________

(5)s+=t的等价语句是______。

5.完善程序。

以下是计算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)

6.调试程序。

请阅读以下程序并写出运行结果。

fruites=['banana','apple','mango']

forfruitinfruites:

print(fruit)

a=len(fruites)

print('a=',a)

_________________

7.以下是计算s=1+6+11+...+101的程序代码,请补全程序。

s=0

foriinrange(1,102,  ):

s=  

print(s)

请补充完成上述程序①_________②_________

8.分析完善程序

已知包含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)=_________

②___________

9.求50以内所有5的倍数的和。

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

11.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:

能被4整除但不能被100整除或能被400整除,闰年的2月为29天)

day=input("请输入年月日(格式举例:

2000-01-05):

")

year=int(day[:

4])

month=_________

sun=int(day[8:

10])

print(year,month,sun)

f_run=[31,28,31,30,31,30,31,31,30,31,30,31]

tall_day=0

if______:

foriinrange(month-1):

tall_day+=f_run[i]

__________

else:

foriinrange(month-1):

tall_day+=f_run[i]

tall_day+=sun

print(day+"是当年的第"+str(tall_day)+"天")

(1)将程序横线处补充完整

(2)如输入“2020-4-19”为当年的第_____天。

12.输入n,计算s=1!

+2!

+...+n!

的未6位(不含前导0)。

N<=1000000,n!

表示前n个正整数之积。

13.编写一个程序,实现九九乘法口诀表。

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

实现功能:

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

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("运行完毕,请按任意键退出....")

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.已知圆柱体的底面半径为r,高为h,(均为正整数),小张编写了一个程序计算圆柱体的地面周长和面积,圆柱体侧面积以及圆柱体体积,其中圆周率定义为:

3.14,请根据下列代码回答问题:

r=int(input(“请输入半径r:

”))

h=int(input(“请输入高h:

”))

_________________________

c=2*pi*r

s=pi*r**2

S=c*h

V=s*h

print(c,s,S,V)

(1)解决问题的程序用到的控制结构有:

__________________(填:

顺序结构、分支结构、循环结构)

(2)请将程序补充完整。

(3)请找出程序中的错误代码,并改正。

____________________________________________

18.现在有一个程序用来解决以下问题:

如果有总量共1020个西瓜,第一天卖掉总数的一半后多卖出了两个,以后每天卖剩下的一半多两个,那么几天以后卖完呢?

请将下列程序补充完整。

tc=1020

c=0

while______________:

tc=tc-(tc/2+2)

_____________

print(c)

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.学校开展“奇妙的数字”研究性学习活动。

张轩小组4人决定把课题定为《探秘水仙花数》。

(1)张轩使用XX搜索引擎搜索到“水仙花数”是这样定义的:

“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:

153=13+53+33,那么这个数就是一个“水仙花数”。

XX属于____搜索引擎(全文,分类)

(2)为了求解100--999这些数字中,哪些数字是“水仙花数”?

张轩小组进行了算法设计,并使用python编写了一段程序来求解所有的“水仙花数”,程序和运行结果下图:

k是可以重新赋值的,k是变量还是常量?

____程序中①处有空缺,请补充完整①处的代码。

____程序中逐一验证了100到999之间所有的三位数是否符合“水仙花数”的定义条件,这种算法叫做______(解析法,枚举法,递归法,二分法)。

(3)在研究成果展示环节,张轩小组可以使用什么软件制作《探秘水仙花数》的研究成果报告?

(_____)

21.学习了Python绘制图形操作后,信息小组接到了编程演示的任务。

为此,小组同学编写了一段代码,绘制出多个不同颜色的圆形。

代码如下:

importturtle

turtle.bgcolor("black")

colors=["red","green","blue","yellow"]

forx①range(100):

turtle.pencolor(colors[x%4])

turtle.circle(x)

turtle.left(90)

请分析任务,完成下列题目。

(1)程序中①处应填写(________)。

A.printB.inputC.inD.colors

(2)程序中x%4的作用是(________)。

A.计算x乘以4的结果

B.计算x除以4的整数部分

C.计算x除以4的小数部分

D.计算x除以4的余数

(3)执行此程序,绘制出圆形的总颜色数是(________)。

A.1B.4C.5D.100

(4)执行此程序,绘制出圆形的总个数是(________)。

A.1B.4C.99D.100

(5)此程序属于程序设计结构中的(________)。

A.顺序结构B.分支结构

C.循环结构D.跳转结构

22.某企业开展“运动打卡动动有奖”活动:

若员工在本月累计运动时间30小时以下,奖励0元;达到30但不足45小时奖励300元;达到45但不足60小时奖励450元;60小时及以上奖励500元。

小强用python编写程序实现相关功能:

输入某员工本月累计运动时间(时),输出其能获得的奖励金额。

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

t=int(input(“请输入您本月累计运动时间(时):

”))

ift<0:

print(“输入错误”)

else:

ift<30:

①_

elift<45:

m=300

②_____

m=450

else:

m=500

print(“您的奖励是:

”,m)

(2)当输入“-1”时,输出信息为_________(选填,填字母:

A.输入错误/B.您的奖励是:

0/C.您的奖励是:

500)

23.小金同学学完了进制转换后,对课后的不同进制的加减法很是头疼,爱动脑筋的小金突发奇想,能不能用python程序来完成这些作业呢?

请帮小金完成代码编程.

defconvert(s):

m=0

le=len(s)

key=s[le-1]

ifkey=="B":

n=2

elifkey=="D":

_______

else:

n=16

i=0

whilei<=le-2:

c=s[le-1-i]

ifc>="0"andc<="9":

a=ord(c)-ord("0")

elifc>="A"andc<="F":

a=ord(c)-ord("A")+10

_____________

i+=1

returnm

s=input("请输入算式")

result=0;suanfu1="";suanfu2="";s1=""

foriinrange(len(s)):

c=s[i]

ifc=="+"orc=="-"orc=="=":

__________

suanfu1=suanfu2

suanfu2=c

ifsuanfu1=="":

result=t

ifsuanfu1=="+":

result=result+t

ifsuanfu1=="-":

result=result-t

s1=""

else:

s1=s1+c

print("计算结果为"+str(result)+"D")

(1)将程序横线处补充完整

(2)如输入“1110B+10D-30H=”则输出结果为___________。

24.某市普通高中选课数据如图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)加框处语句的作用是__________________

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

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

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

程序运行界面如图所示:

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

defisprime(x):

foriinrange(2,x):

if①__________:

returnFalse

returnTrue

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

”))

c=0

k=3

whilek<=n-2:

ifisprime(k)and②___________:

print(k,k+2)

③___________

k=k+1

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

26.小强想要快速了解“十四五规划”内容的关键词,他先把“十四五规划”内容存储在ssw.txt文档中,如图a所示,统计文档中出现次数最多的前十个关键词,结果如图b所示。

文本数据处理的算法设计如图c所示,用Python语言编写的程序段如图d所示。

请根据流程图的每个步骤,填写程序段编号,如A:

⑦B:

①D:

③。

现填写C、E、F、G对应的程序段编号.C:

__________E:

__________F:

__________G:

__________

图a

图b

图c

图d

27.某仓库物品代码格式为“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("错误")

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

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

“请输入一个正整数:

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

3)不要超过5行代码。

程序运行举例:

29.蒙特卡洛方法不仅可以用来模拟投针实验,还可以用来模拟求解圆周率T。

请根据所学知识,并上网搜索有关资料,找到利用蒙特卡洛方法求解圆周率Π的原理、方法和Python程序。

30.操作说明:

打开文件“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)

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

 

一、程序填空

1.c5

【详解】

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

①第一个人38岁,n标记第几个人,变量c保存年龄,当n=1时,c=38,故第一空填38。

②后面的人都比前一个人小3岁,故当n不等于1时,调用递归函数age,c=age(n-1)-3,最后返回第n个人的年龄c,第二空填c。

③此处是返回第5个人的年龄,即age(5),填5。

2.字符串类型你及格了喔表现不错程序结束不及格学习方法可能不对程序结束6080错

【详解】

本题主要考查Python编程。

①input()函数接受一个标准输入数据,返回为string类型,因此此处为字符串类型;②输入期末成绩为85时,满足大于等于60及大于等于80条件,因此此处输出为“你及格了喔表现不错程序结束”;③输入期末成绩为55时,满足小于60及大于等于30,因此此处输出为“不及格学习方法可能不对程序结束”;评价是“还可以再提升”项,属于大于等于60且小于80范围,因此④为60,⑤为80;elif后需添加判断条件,因此⑥为错。

【点睛】

3.[5,6,7,8,9][7,8,9][5,6][6,7][7,8]

【详解】

本题主要考查Python列表截取。

Python列表的正向索引下标是从零开始,不是1;当只有冒号,表示全部元素;只有头下标i和冒号(代表的是从该头下标i的元素开始截取,一直到最后);只有冒号尾下标i(代表的是从开始一直截取到i-1

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

当前位置:首页 > 求职职场 > 简历

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

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