试卷Python二级13Python优先级 软件编程等级考试程序填空阅读填空程序试题
一、程序填空
1.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
def gcd (m,n):
r     
while r!0:
mn
n     
     
return     
aint(input(‘请输入a的值:’))
bint(input(‘请输入b的值:’))
print(‘最大公约数是:'      )
填空:
________    ________    ________    ________    ________
2.程序编写
1+22+32+……+1002的结果
_______________________________
_______________________________
_______________________________
_______________________________
input(“运行完毕,请按回车键退出...”)
3.调试程序。请阅读以下程序并写出运行结果。
#ex16.py
i=0
sum=0
while i<10:
  if i%3==0:
    sum+=i
    print(i)
    i=i+1
print('sum',sum)
_________
4.编写程序。信息社团的三个同学和Bruce一起做游戏,他们的游戏规则很简单,从1开始依次报数,每当一个数能被7整除或者十位是7就要跳过这个数,现在给出一个数N,请输入从1N(包含N)中要跳过的数。
5.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
* *
* * *
* * * *
6.哥德巴赫在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”则结果显示_____
7.小明设计了一个可以输入日期得到当天是年度第几天的程序,请阅读程序,完成填空(闰年判断规则:能被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”为当年的第_____天。
8.编写程序,到并输出100以内的偶数个数。
9.编写程序,实现从键盘输入数据,数据前三位的ASCII值加2,从第四位开始ASCII值加3
10.编写一个程序,判定用户输入的两个数 a b,如果用户输入的第一个数大,则两数互换,否则原样输出。
11.输入n,计算s=1+2+...+n!的未6位(不含前导0)。N<=1000000,n!表示前n个正整数之积。
12.1100内奇数之和(使用range函数)
13.操作说明:打开文件“Y:/2/2.py”,在代码窗口指定位置<1><2>处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。
以下程序段的功能是:输入一个正整数n1100),输出它的约数的个数。
s=0
n=int(input(“请输入一个正整数:”))
if  n<1 or n>100
      exit  #输入的数不符合要求,退出
for  i  in range(1,n+1):
    if n//i=0:___<1>
      s=s+i  <2>
print(“约数的个数是:s)
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
for cock_num in range(1,_______):          #公鸡只数可能为1-20
    for hen_num in range(1,_________):      #母鸡只数可能为1-33
        for chick_num in range(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
            if money1==money and num1==num:
                print (cock_num,hen_num,__________)
input("运行完毕,请按回车键退出...")
2)运行程序,运行结果如图所示。
15.程序设计:唐三藏又被妖怪抓走了,这次孙悟空还是没打得过妖怪,于是来求观音菩
萨。观音菩萨告诉孙悟空,在天庭里身高正好为1000米的那位神仙可以降伏此妖。于是悟空立刻来到天上,在玉皇大帝的神仙册上看到了按身高从矮到高排列有10000个神仙。由于时间紧迫,悟空想用最短的时间到这位神仙,这样才可以尽快解救唐僧。
代码如下:
Listlist(map(intinput(“请按身高递增顺序依次输入10000个神仙的身高”).split()))
left1
right10000
while   
mid   
if List[mid]==1000:
   
elif List[mid]1000:
   
else:
   
print(“能帮孙悟空的神仙在第{0}位上”.format(midl))
1)程序代码中①处正确的代码是(_______)
A.leftright      B.left<=right    C.left!right    D.leftright
2)程序代码中②处正确的代码是(_______)
A.(leftright)/2    B.(leftright)\2
C.(leftright)//2    D.(leftright)\\2
3)程序代码中③处正确的代码是(_______)
A.pass          B.print(mid)z      C.break        D.continue
4)程序代码中④处正确的代码是(_______)-
A.leftmid      B.rightmid    C.leftmid1    D.rightmid-1
5)程序代码中⑤处正确的代码是(_______)
A.leftmid      B.rightmid    C.leftmid1    D.rightmid-1
16.一家商场在降价促销,如果购买金额不高于200元,会给10%的折扣,如果购买金额高于200元,会给20%的折扣。编写一个Python程序,输入消费额(整数),显示折扣后的应付金额。
17.在一千多年前的《孙子算经》中,有这样一道算术题:“今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问物几何?”。即一个数除以3余2,除以5余3,除以7余2,求这个数。
i=①________
while (i%3!=2 ________ i%5!=3 or i%7!=2):
    i=________
print(i)
18.完善程序实现以下功能并保存。
输出数组的最大值。
arr1 =[12 435 76 24 78能运行python的软件 54 866 43]
________ = -32768
for i in range(07):
    if arr1[i] > max1 : max1 =  ________
print("最大值是:" ________)
input("运行完毕,请按回车键退出...")
19.已知6月份10位技术考试成绩:
1
2
3
4
5
6
7
8
9
10
78
88
89
90
83
76
75
98
100
65
技术老师想统计出80分(含80)以上的人数,请完善程序,代码如下:

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