NCT-Python编程三级-模拟卷5(含答案优质程序填空阅读填空程序试题
一、程序填空
1.编写一个程序,判定用户输入的两个数 a b,如果用户输入的第一个数大,则两数互换,否则原样输出。
2.请在空格处填写正确的代码,使程序完善。
实现功能:用辗转相除法求解两个正整数的最大公约数。
while语句流程图怎么画x = int(input('请输入第一个正整数:'))
y = int(input('请输入第二个正整数:'))
m = max(x,y)            #x,y中的最大值
n = min(x,y)            #x,y中的最小值
r = m%n                #求得最大值除以最小值后的余数
while r!=0:          #如果余数不等0,则进行以下循环
    m =________            #把最小值赋给m
    n =_________            #把余数赋给n
    r = m%n            #求得最大值除以最小值后的余数
print('这两个数的最大公约数为:',______)
input("运行完毕,请按任意键退出....")
3.冠军在A、B、C、D四位同学中。A说:“不是我”,B说:“是C”,C说:“是D”, D说:“C说的不对”,已知四人中有一人说了假话。判断出到底谁是冠军。
请在空格处填写正确的代码,使程序完善。
champion=['A','B','C','D'] #设置选手列表
for i in__________: #循环读取选手编号
    cond=(i!='A') +(i=='C') + (i=='D')+(i!='D') #查符合条件的选手
    if cond== _____: #说真话是否是3
        print("冠军是:",_________) #输出冠军
input("运行完毕,请按回车键退出...")
4.将下列程序代码补充完整:
某同学参加了学校体检,体检的医生告诉他体重超重,需要加强运动。该同学了解到运动时,心率如能控制在一定范围内,对增强心血管系统和呼吸系统的功能都有很好的效果;超出范围,对身体反而会有损伤。男最适宜运动心率=(220-年龄数-安静心率)×(60%80%)+安静心率,女最适宜运动心率=(210-年龄数-安静心率)×(60%80%)+安静心率,补充程序帮他(她)计算最适宜的运动心率。
age=floatinput'请输入age='))
HRrest=floatinput'请输入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(“运行完毕,请按回车键退出...”)
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
while i<10:
  if i%3==0:
    sum+=i
    print(i)
    i=i+1
print('sum',sum)
_________
7.编写程序,用*打印一个如下所示的等腰直角三角形,将测试结果截图。
*
* *
* * *
* * * *
8.以下是计算s = 1+6+11+...+ 101的程序代码,请补全程序。
s=0
for i in range(1,102,    ):
s= 
print( s)
请补充完成上述程序①_________        _________
9.分析完善程序
已知包含25项的数列: 12/33/5....24/4725/49
问题1 :写出该数列的通项公式fn= _
问题2 :以下是计算S=1+ 2/3+3/5+ ... + 24/47+ 25/49的程序,请补全代码:
s=0
for i in range(1,26):
    s=s+   
print(“s=”,s)
补充完成上述通项公式和程序:
fn=_________
___________
10.分析完善程序
某市出租车收费标准如下:
13公里内(含3公里),收费8
2)超过3公里但未超过6公里部分,按1.5/公里收费
3)超过6公里部分,按2.25/公里收费。
根据以上标准,输入出租车行驶的公里数,请计算顾客需付费多少元?
[算法分析]
假设总费用为p,则可以分段计算
p=8    ‘s3
p=1.5*s-3+8  ‘3<s6
p=2.25*s-6+1.5*3+8  ‘s>6
[参考代码]
a=float(input(“s=”))
if s <= 3 :
  p= 8
if         
  p=1.5*s-3+8
if s > 6 :
  p=2.25*s-6+1.5*3+8
print( p)
根据上述回答如下问题:
1)本题采用的算法是________(填:解析法/枚举法/排序法/递归法)。
2)程序代码中空白处应填写的条件是_______(填: A/B/C/D)。
A.3<s<=6      B.3<=s<=6    C.s>3 and s<6  D.s>3 Or s<=6
11.约瑟夫问题是个有名的问题: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])
12.50以内所有5的倍数的和。
13.编写一个程序,它将到所有这些数字,可被7整除,但不是5的倍数,2000年至3200(包括在内)。得到的数字应按逗号分隔的顺序打印在一行上。提示:考虑使用range(#begin #end)
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.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)
16.(项目情境)一元二次方程ax2+bx+c=0a0),当b24ac0,方程有两个不同的实数根,当b24ac0时,方程无实数根。
(问题求解)下面的python程序实现的功能是判断方程是否有实数根。请阅读如下python程序,在空白处填写适当的表达式或语句,使程序完整。
import math
a=int(input("请输入a的值:"))
b=int(input("请输入b的值:"))
c=int(input("请输入c的值:"))
d=_____  #将表达式b24ac的值赋给变量d
if ____
    print("x1=",(-b+math.sqrt(d))/(2*a))  #输出方程的其中一个实数根
    print("x2=",(_________)          #输出方程的另一个实数根
else:
    _________    #输出“方程无实数根”
17.1100内奇数之和(使用range函数)

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