资料python二级模拟试卷4程序填空阅读填空程序试题
一、程序填空
1.有如下程序段:
    sum=0
    for  i  in  range(1,20,3) :
          sum+=i
    print(“sum=”,sum)
(1)循环变量i的初值为:_________,终值为:_________,步长为:__________
(2)该程序执行后,输出的结果为:____________________
2.阅读程序。分析下列切片相关程序并回答问题。
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的输出结果是______________
3.完善程序。以下是猜数游戏的程序,请在画线出填写正确的内容。
import random
secret=random.randint(0,10)
print(“---猜数游戏  -----”)
cs=int(input(“你猜的数字是请输入长度为5的字符串是什么”))
while cs!=secret:
  _______cs>secret:
  _________ (“唉,猜大啦!”)
__________:
print(“嘿嘿,猜小了!”)
cs= int(input(“重新猜一个靠谱的数字是:”))
print(“游戏结束,不玩了!”)
4.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
* *
* * *
* * * *
5.以下是计算s = 1+6+11+...+ 101的程序代码,请补全程序。
s=0
for i in range(1,102,    ):
s= 
print( s)
请补充完成上述程序①_________        _________
6.程序分析题
学校举行校园歌手大赛,评委由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位评委的打分与maxmin进行比较,得出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:
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步。请填写片段中空白处的表达式填写完整________
7.约瑟夫问题是个有名的问题:N个人围成一圈,顺序为012345,从0号这个人开始报数,报到2的将被杀掉,接下去重新开始报数,报到3的将被杀掉...以此类推,最后剩下一个,其余人都将被杀掉。例如N=6,被杀掉的顺序是:14305;最后只剩下2这个人。
llist=
n=intinput(“请输入参与人数:”))
for i in range0n-1):
llist.append[ii+1]
___________
___________
long=n
k=head
i=1
p=2
while(____ ):
    if i==p-1:
        t=llist[k][1]
        print(llist[t][0])#索引为t的删除
                  __________________
        if t==head:
                  ___________________
        i=1
        p+=1
        long=long-1
        k=llist[k][1]
        ______________
    i+=1
print(llist[head][0])
8.50以内所有5的倍数的和。
9.哥德巴赫在1742年提出了以下猜想:任何一个大于2的偶数都可以写成两个质数之和,请完善代码帮助哥德巴赫验证他的猜想。
import math
def ss(n):
Flag=True
i=2
while i <= int(math.sqrt(n))and Flag:
            if _____________
              Flag = False
            _____________
    return Flag
n=int(input(“输入一个大于2的偶数”))
for i in rang(2,n//2+1):
if____________
print(str(n)+"="+str(i)+"+"+str(n-i))
如果输入“8”则结果显示_____
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.编写一个程序,判定用户输入的两个数 a b,如果用户输入的第一个数大,则两数互换,否则原样输出。
12.100以内素数。
13.广场上有许多(有数百人)小朋友在玩分组游戏,当他们分成三人一组时,发现最后多出两个;当他们分成五人一组时,发现最后多出三个;当他们分成七人一组时,发现最后多出两个。编写程序求出这些小朋友的可能人数。
实现上述功能的程序如下,请在程序划线处填入合适的代码。
________
a=[ ]
for i in range(100,1000):
    if_____________:
          a.append(i)
          total + = 1
print("这小朋友总的人数有:")
for  j in range(len(a)):
    print(____,end='')

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。