资料【python一级】知识点_题型程序填空阅读填空程序试题
- 格式:doc
- 大小:828.50 KB
- 文档页数:20
资料【python一级】知识点_题型程序填空阅读填空程序试题
一、程序填空
1.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
def gcd (m,n):
r=
while r!=0:
m=n
n=
return
a=int(input(‘请输入a的值:’))
b=int(input(‘请输入b的值:’))
print(‘最大公约数是:' )
填空:
________ ________ ________ ________ ________
2.阅读程序。分析条件语句的代码并回答问题。
(1)如果不能使用int()函数,那么变量s的类型将会变成 ______ 。
(2)如果你的期末成绩是85,你得到的评价将会是____________ 。
(3)如果你的期末成绩是55,你得到的评价将会是____________ 。
(4)如果你得到的评价是“还可以再提升”,你的期末成绩应该在_____和______之间。
(5)“程序中出现的所有else都可以替换为elif,程序效果一样”,这种说法是____(填“对”或“错”)的。
3.完善程序。以下是猜数游戏的程序,请在画线出填写正确的内容。
import random secret=random.randint(0,10)
print(“---猜数游戏 -----”)
cs=int(input(“你猜的数字是”))
while cs!=secret:
_______cs>secret:
_________ (“唉,猜大啦!”)
__________:
print(“嘿嘿,猜小了!”)
cs= int(input(“重新猜一个靠谱的数字是:”))
print(“游戏结束,不玩了!”)
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.调试程序。请阅读以下程序并写出运行结果。
#ex16.py
i=0
sum=0
while i<10:
if i%3==0: sum+=i
print(i)
i=i+1
print('sum',sum)
_________
6.编写程序。信息社团的三个同学和Bruce一起做游戏,他们的游戏规则很简单,从1开始依次报数,每当一个数能被7整除或者十位是7就要跳过这个数,现在给出一个数N,请输入从1到N(包含N)中要跳过的数。
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
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步。请填写片段中空白处的表达式填写完整________
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
for i in range(1,26):
s=s+ ②
print(“s=”,s)
补充完成上述通项公式和程序:
①f(n)=_________
②___________
9.输入三个同学的成绩,然后大到小排列。
10.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:能被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 ______:
for i in range(month-1):
tall_day +=f_run[i]
__________
else:
for i in range(month-1):
tall_day +=f_run[i]
tall_day += sun
print(day+"是当年的第"+str(tall_day)+"天")
(1)将程序横线处补充完整
(2)如输入“2020-4-19”为当年的第_____天。
11.编写程序,实现从键盘输入数据,实现输入数据转换成大写并输出。
12.求100以内素数。
13.操作说明:打开文件“Y:/1/1.py”,将程序补充完整,不得增加,删除语句、或改变程序原有结构,操作结束后保存。 以下程序段的功能是:根据从键盘上输入的表示星期几的数字,若输入的数字不是在范围(1至7)输出“输入错误!”,否则输出对应的英文星期的简称如“Mon、Tue、Wed、Thu、Fri、Sta、Sun”。
n=int(input(“请输入一个数:”))
list=[ “Mon”,”Tue”,”Wed”,”Thu”,”Fri”,”Sta”,”Sun”]
if ________:
print(“输入错误!”)
else:
print(________)
14.将下列程序代码补充完整:
某同学参加了学校体检,体检的医生告诉他体重超重,需要加强运动。该同学了解到运动时,心率如能控制在一定范围内,对增强心血管系统和呼吸系统的功能都有很好的效果;超出范围,对身体反而会有损伤。男最适宜运动心率=(220-年龄数-安静心率)×(60%~80%)+安静心率,女最适宜运动心率=(210-年龄数-安静心率)×(60%~80%)+安静心率,补充程序帮他(她)计算最适宜的运动心率。
age=float(input('请输入age='))
HRrest=float(input('请输入HRrest='))
gender=input(“请输入male or female :”)
if ____________________:
____________________
else:
_____________________
low=(n-age-HRrest)*0.6+HRrest
high=(n-age-HRrest)*0.8+HRrest
print('最适宜的心率是:',low,'~',high)
input(“运行完毕,请按回车键退出...”)
15.程序设计:键盘输入任意的正整数,程序输出与其相应的二进制数。
代码如下:
n=int(input("请输入一个十进制数:"))
result=[]
while n>0:
result.append( ① )
n= ②
result.reverse()
for i in result:
print(i,end=”)
(1)程序代码中①处正确的代码是(_______)。
A.n%2 B.n/2 C.n//2 D.n*2
(2)程序代码中②处可能的代码是(_______)。
A.n%2 B.n/2 C.n//2 D.n*2 16.编写Python程序实现如下功能:输入年月日,输入格式如“2021-06-21”,年月日之间用“-”分隔。判断这一天是这一年的第几天。以2021-06-21为例,前面5个月总天数,加上21天即这一天是本年的第几天。特殊情况,当输入的年份是闰年时,2月份有29天。闰年的判断方式如下:
I、能被4整除,但不能被100整除;
II、能被400整除;
(1)“2020-05-20”这一天是这一年的第_________天。
(2)编写Python代码如下,在划线处填入正确的代码
_________________
_________________
_________________
(3)加框处的代码有误,请改正。
改正:_________________
mon=[31, 28, 31, 30, 31, 30,31, 31, 30, 31, 30,31] #mon 中存储1-12每个月的天数
s=input("请输入年月日: ")
'month=int(s[5:7])
①
sum=0
for i in range( ② ):
sum+=mon[i]
sum+=day
if :
isleap=True
else:
isleap=False
if ③
sum+=1
print("这一天是当年的第" +str (sum)+''天'')
17.广场上有许多(有数百人)小朋友在玩分组游戏,当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个。编写程序求出这些小朋友的可能人数。
实现上述功能的程序如下,请在程序划线处填入合适的代码。
________
a=[ ]
for i in range(100,1000):
if_____________: