完整版Python题库优质程序填空阅读填空程序试题.docx

上传人:b****3 文档编号:6086828 上传时间:2023-05-09 格式:DOCX 页数:36 大小:1.38MB
下载 相关 举报
完整版Python题库优质程序填空阅读填空程序试题.docx_第1页
第1页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第2页
第2页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第3页
第3页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第4页
第4页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第5页
第5页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第6页
第6页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第7页
第7页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第8页
第8页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第9页
第9页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第10页
第10页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第11页
第11页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第12页
第12页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第13页
第13页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第14页
第14页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第15页
第15页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第16页
第16页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第17页
第17页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第18页
第18页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第19页
第19页 / 共36页
完整版Python题库优质程序填空阅读填空程序试题.docx_第20页
第20页 / 共36页
亲,该文档总共36页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

完整版Python题库优质程序填空阅读填空程序试题.docx

《完整版Python题库优质程序填空阅读填空程序试题.docx》由会员分享,可在线阅读,更多相关《完整版Python题库优质程序填空阅读填空程序试题.docx(36页珍藏版)》请在冰点文库上搜索。

完整版Python题库优质程序填空阅读填空程序试题.docx

完整版Python题库优质程序填空阅读填空程序试题

(完整版)Python题库优质程序填空阅读填空程序试题

一、程序填空

1.完善程序实现以下功能并保存。

输入一元二次方程的系数a,b,c的值,求解一元二次方程ax2+bx+c=0(a≠0)

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

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

importmath

a=float(input("请输入方程系数a(!

=0):

"))

b=float(input("请输入方程系数b:

"))

c=float(input("请输入方程系数c:

"))

delta=b*b-4*a*c

ifdelta>________:

x1=(-b+math.sqrt(delta))/(2*a)

x2=(-b-math.sqrt(delta))/(2*a)

print("方程有两个不同的解",x1,x2)

elifdelta==0:

x1=________

print("方程有两个相同的解",x1)

else:

print("方程无解")

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

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

实现功能:

绘制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._________

3.阅读程序。

阅读求水仙花数的代码并回答问题。

“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。

例如:

153是一个“水仙花数”,因为153=13+53+33,请计算并输出所有三位数的水仙花数。

forninrange(100,1000):

i=n//100

j=n//100%10

k=n%10

ifn==i*i*i+j*j*j+k*k*k:

print(n)

(1)//的符号作用是_____。

(2)%的符号作用是_____。

(3)==的符号作用是_____。

(4)在代码中,变量i表示的是三位数中的______位。

(5)在代码中,变量j表示的是三位数中的______位。

(6)在代码中,变量k表示的是三位数中的______位。

(7)在range(100,1000)这个区域内,变量n无法取到的数值是________。

4.阅读程序。

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

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

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

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

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

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

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.调试程序。

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

#ex16.py

i=0

sum=0

whilei<10:

ifi%3==0:

sum+=i

print(i)

i=i+1

print('sum',sum)

_________

7.阅读程序。

foriinrange(1,10):

forjinrange(1,i+1):

print("%dX%d=%2d"%(j,i,j*i),end="")

print()

(1)在第一行程序中,变量i的数据范围为_____到____。

(2)在第二行的程序中,变量j的数据范围为_____到____。

(3)如果“%d”表示十进制数,那么%2d则表示____位宽的十进制数。

(4)第三行程序改为print("%dX%d=%2d"%(i,j,i*j),end=""),则本题的输出应该是_____。

(5)如果最后一行的print()表示换行,那么end=””的功能是_______。

8.(项目情境)在中国古代,出自数学家张丘建的《算经》中这样一个值得研究的问题:

今有鸡翁一,直钱五;鸡母一,直钱三;鸡雏三,直钱一。

凡百钱,买鸡百只。

问鸡翁、母、雏各几何?

这个问题就是著名的“百钱买百鸡问题”。

即:

现有100文钱,公鸡5文钱一只,母鸡3文钱一只,小鸡一文钱3只,要求:

公鸡,母鸡,小鸡都要有,把100文钱买100只鸡,买的鸡是整数。

问公鸡、母鸡和小鸡各几何?

(问题求解)设用变量g、m、x三个变量分别存放公鸡、母鸡和小鸡的数量,请阅读如下程序,在空白处填写适当的表达式或语句,使程序完整。

forginrange(1,20):

formin_______:

forxinrange(3,98,3):

if_________and__________==100:

print("公鸡:

",g,"母鸡:

",m,"小鸡:

",x)

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

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

11.哥德巴赫在1742年提出了以下猜想:

任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。

importmath

defss(n):

Flag=True

i=2

whilei<=int(math.sqrt(n))andFlag:

if_____________

Flag=False

_____________

returnFlag

n=int(input(“输入一个大于2的偶数”))

foriinrang(2,n//2+1):

if____________

print(str(n)+"="+str(i)+"+"+str(n-i))

如果输入“8”则结果显示_____

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.(最大公约数)用辗转相除法求两个正整数的最大公约数。

代码如下:

defgcd(m,n):

r=

whiler!

=0:

m=n

n=

return

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

’))

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

’))

print(‘最大公约数是:

')

填空:

________________________________________

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.有如下程序段:

sum=0

foriinrange(1,20,3):

sum+=i

print(“sum=”,sum)

(1)循环变量i的初值为:

_________,终值为:

_________,步长为:

__________。

(2)该程序执行后,输出的结果为:

____________________。

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

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

请将下列程序补充完整。

tc=1020

c=0

while______________:

tc=tc-(tc/2+2)

_____________

print(c)

20.小敏有10万元本金,想要购买银行保证收益型理财产品。

每年到期后连本带利仍购买此种理财。

请你帮助小敏分析,在年收益率不变的情况下,多少年后小敏的累计收益能超过本金,请完成程序填空。

(例如输人:

5.15%,输出:

14年后收益超过本金。

1s=input("请输入年利率:

")

2rate=float(s[:

-1])*0.01

3money=100000

4year=0

5whilemoney<=200000:

6money=round(),2)

7year=year+1

8print(year,"年后收益超过本金。

”)

(1)程序第6行下划线处应填入___________。

(2)程序第2行的作用是____________,并赋值给变量rate。

(3)该程序主要是通过while实现____________结构。

21.求解a到b内(包含a和b)所有的质数,并对每个质数的每一位数字求和。

请完善程序。

程序如下:

importmath

defIsPrime(i):

ifi==1:

returnFalse

forjinrange(2,int(math.sqrt(i))+1):

if____:

returnFalse

returnTrue

a=int(input("请输入a:

"))

b=int(input("请输入b:

"))

summ=0

foriinrange(a,b+1):

ifIsPrime(i):

________

whilet>0:

summ=summ+t%10

_________

print("数字和为:

",summ)

22.辗转相除法,又称欧几里德算法,用于计算两个正整数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行划线处为__________。

23.某种数据加密方法描述如下(加密前数据是ASCII字符):

●以8个数据为一段,将n个待加密数据依次分割成若干个数据段,剩余数据(个数小于8)为独立数据段。

●数据加密规则:

数据个数等于8的数据段,对各个字符进行位置变换;数据个数小于8的数据段,不进行位置变换。

位置变换:

用位置变换密钥数组c,将数据段每个字符进行位置变换,方法如下:

加密后某数据段的第i个元素=对应原数据段的第c(i)个元素,其中i=1,2,……,8。

数值变换:

位置变换后,依次取出各个字符进行数值变换:

把该字符的ASCII码转二进制,然后与密钥m对应的二进制数(m为1到255之间的整数)按位异或运算。

异或运算(⊕)规则:

如果a、b两个值不相同,则a⊕b结果为1;如果a、b两个值相同,则a⊕b结果为0,即:

0⊕0=0,1⊕0=1,0⊕1=1,1⊕1=0。

●把上述处理的得到二进制数依次拼接,即构成最后的加密数据例如,待加密数据为“python3.50”,数组c各元素的值依次是

数组c

3

6

1

5

2

8

4

7

则数据位置变换如下:

如值变换密钥m为35(二进制表示是00100011),则字符“t”(ASCII码值是116,二进制表示是010100)的数值变换过程如下:

变换前

0

1

1

1

0

1

0

0

密钥m

0

0

1

0

0

0

1

1

变换后

0

1

0

1

0

1

1

1

(1)已知“A”的ASCII码值是65,m=35,则“A”数值变换后的结果是_______(填二进制数据)。

(2)小李根据上述算法,设计了一个数据加密程序,其VB代码如下,请在划线处填入合适的代码。

Constn=1024

Dimc(1To8)AsInteger

PrivateSubForm_Load()

‘产生位置变换密钥数组c,代码略

EndSub

Functionconvert(cAsInteger)AsString

‘程序功能:

把整数c转成8位二进制数,代码略

EndFunction

PrivateSubCommand1_Click()

DimsAsString,stAsString,ssAsString,resAsString

DimiAsInteger,jAsIntegerstartAsInteger

Dima(1Ton)AsString,b(1Ton)AsString

s=Text1.Text

st=convert(Val(Text2.Text))

Fori=1ToLen(s)

a(i)=Mid(s,i,1)

Nexti

i=1:

start=-8

DoWhile①________

IfiMod8=1Thenstart=start+8

b(i)=②_______

i=i+1

Loop

Forj=iToLen(s)

b(j)=a(j)

Nextj

Fori=1ToLen(s)

③________

Forj=1To8

IfMid(ss,j,1)=Mid(st,j,1)Then

res=res+"0"Elseres=res+"1"

'按位异或

Nextj

Nexti

Text3.Text=res

EndSub

24.学校开展“奇妙的数字”研究性学习活动。

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

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

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

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

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

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

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

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

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

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

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

(_____)

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

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

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

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

用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,"种")

27.设计完成算法之后,小C打算用所学的Python程序设计语言完成程序的编写。

(1)Python程序设计语言属于程序设计语言中的_______________。

A.机器语言B.汇编语言C.高级语言D.翻译程序

(2)小C将设计好的算法转为Python程序语言(如下)。

其中“Tot2=8”是一个___________,“#初始化时长费为0”是一个__________,“S<=3.3”是一个___________,“float(input(“请输入时长”))”是一个__________。

A.函数B.表达式C.赋值语句D.注释语句

1Tot1=0#初始化时长费为0

2Tot2=0#初始化里程费为0

3S=float(input(“请输入里程数”))

4T=float(input(“请输入时长”))#输入里程数和时长

5if(T>9):

#计算时长费用

6Tot1=(T-9)*0.2

7if(S<=3.3):

#算里程费用

8Tot2-8

9else:

10Tot2=8+(S-3.3)*1.35

11Cost-Totl+tot2

12print(Cost)#输出总车费

(3)小C写好代码之后,编译运行发现报错了,根据下图中所示的错误信息分析该程序报错的原因是:

____________________________________________________________________________________________。

NameErrorTraceback(mostrecentcalllast)

in

9else:

10

—→11Cost=Tot1+tot2

12

NameError:

name’tot2’isnotdefined

(4)经过修改之后,小C对照某次滴滴打车的订单,将对应的公里数和时长输入程序,运行得到的结果与实际支付的费用一致,小C会心一笑验证得知程序正确无误。

小C借助于计算机编写程序解决问题的这个过程是:

①设计算法②编写程序③分析问题④调试运行程序,合理的顺序是_________。

(填写序号即可)

(5)总结用计算机解决问题的优势主要有:

_______________________________________________。

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

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

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

⑦B:

①D:

③。

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

__________E:

__________F:

__________G:

__________

图a

图b

图c

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

当前位置:首页 > 自然科学 > 物理

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

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