试卷全国青少年软件编程(Python)等级考试试卷(二级)(1)程序填空阅读填空程序试题
一、程序填空
1.现有字典如下,根据题目要求,写出相关的表达式:
xingzuo = { ‘小明’:‘巨蟹座’,‘小红’:‘处女座’,‘小兰’:‘金牛座’}
(1)现要取出小红所对应的星座,写出相关表达式:
___________________________________________________________
(2)现发现,“小兰”同学的星座应该是“水瓶座”,请帮忙修改。
__________________________________________________________
(3)现发现,在字典中漏写了关于“小贝”的信息,现已知“小贝”为“双子座”,请帮忙添加。
_________________________________________________________
(4)写出删除该字典的表达式:
___________________________________________________________
2.请在空格处填写正确的代码,使程序完善。
实现功能:用辗转相除法求解两个正整数的最大公约数。
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.阅读程序。
for i in range(1,10):
for j in range(1,i+1):
print("%d X %d=%2d"%(j,i,j*i),end=" ")
print()
(sybase数据库安装1)在第一行程序中,变量i的数据范围为_____到____。
(2)在第二行的程序中,变量j的数据范围为_____到____。
(3)如果“%d”表示十进制数,那么%2d则表示____ 浮点性能位宽的十进制数。
(4)第三行程序改为print("%d X %d=%2d"%(i,j,i*j),end=" "),则本题的输出应该是_____。
(5)如果最后一行的print()表示换行,那么end=””的功能是_______ 。
4.约瑟夫问题是个有名的问题:N个人围成一圈,顺序为0,1,2,3,4,5,从0号这个人开始报数,报到2的将被杀掉,接下去重新开始报数,报到3的将被杀掉...以此类推,最后剩下一个,其余人都将被杀掉。例如N=6,被杀掉的顺序是:1,4,3,0,5;最后只剩下2这个人。
llist=
n=int(input(“请输入参与人数:”))
for i in range(0,n-1):
llist.append([i,i+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])
5.求50以内所有5的倍数的和。
6.利用for循环,分别计算1--100中奇数的和、偶数的和。
7.编写程序,到并输出100以内的偶数个数。
8.编写程序,实现从键盘输入数据,实现输入数据转换成大写并输出。
9.求水仙花数(一个三位数,其各位数字立方和等于该数字本身)
10.操作说明:打开文件“Y:/2/2.py”,在代码窗口指定位置<1>、<2>处修改完善程序代码,不得增加、删除语句或改变程序原有结构,操作结束后保存。
以下程序段的功能是:输入一个正整数n(1至100),输出它的约数的个数。
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)
11.(最大公约数)用辗转相除法求两个正整数的最大公约数。
代码如下:
def gcd (m,n):
rtable是内联元素吗=
while r!=0:
m=n
n=
return
a=int(input(‘请输入a的值:’))
b=int(input(‘四舍五入公式excel函数请输入b的值:’))
print(‘最大公约数是:' )
填空:
________unix命令格式 ________ ________ ________ ________
12.地球绕太阳的运行周期为365天5小时48分46秒(合365.24219天),即一回归年。公历的平年只有365天,比回归年短约0.2422天,每四年累积约一天,把这一天加于2月末(即2月29日),使当年的时间长度变为366天,这一年就是闰年。判断某一年是否是闰年
的方法是年份数能被4整除,但不能被100整除,或者年份数能被400整除。以下是一段用于判断某一年是否是闰年的程序。
请将上面程序框中空格处的内容填写完整,其中①处填写代码注释
___________ ______ __________ _______ _______
13.小王编写了“字符串缩写”程序,实现如下功能:
1.输入一串由英文字母和数字组成的字符串,
2.如果字符串有连续字符构成的升序段(后面字符的ASCII值比前面的字符的ASCII值大1),则把升序段缩写成由第一个字符加上“ — ”和最后一个字符组成的新字符段,
3.例如:字符串为“abcdf12345becomexy”,则缩写成“a-df1-5becomex-y”。
程序运行时,输入一串字符,输出缩写的字符串,程序运行效果如下图所示:
实现上述功能的程序如下,请在程序划线处填入合适的代码。
s=input("请输入字符串s:")
_______
flag = False
result=" "
for i in range( 0 , k-1):
if ___________________ :
result=result+s[i]+"-"
flag = True
elif ord(s[i]) ! = ord(s[i+1])-1:
result=result+s[i]
_____
result=result + s[i+1]
print("缩写后的字符串为:",result)
划线处①处应该填入的语句为: ;
划线处②处应该填入的语句为: ;
划线处③处应该填入的语句为: 。
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.完善代码并保存。
实现功能:从键盘输入10个学生的测试成绩,输出最高分和最低分。
编程软件python怎么读cj=[]
for i in range(0,________):
x=float(input("请输入一个数"))
cj.append(________)
print(max(cj), min(________))
input("运行完毕,请按回车键退出...")
16.小明用Python语言写了一个货币兑换程序如下:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论