相关试卷
-
1、基姆拉尔森公式用来计算 给定日期是星期几的问题。基姆拉尔森公式的Python表达式为week= (d+2*m+3*(m+1)//5+y+y//4-y// 100+y//400+ 1)%7。该表达式中,y表示年份,m表示月份,d表示日期。经计算所得week值为0表示星期日,week值为1表示星期一,……以此类推。若遇到1月和2月,则需要将其分别转换为上一年的13月和14月,如:2020-2-13需换算成2019- 14- 13后代入公式计算。(1)、根据题意,2021年1月1日是星期 。(2)、为实现上述功能,请将下列Python程序下划线处补充完整。
sw="日一二三四五六”
y=in(input("请输入年份:"))
m= int(input("请输入月份:"))
d=int(input("请输入日期:"))
printy,"年",m,"月",d,"日")
#处理1月和2月
①
week=(d+2*m+3*(m+1)//5+y+y//4-y//100+y//400+1)%7
weekday= ②
print("星期", weekday)
① ②
-
2、某旅游景点规定,身高在1.2米以下的儿童免票,身高1.2~1.5米(包含1.2米和1.5米)的儿童购买半价票,身高超过1.5米的游客购买全价票。用Python程序实现上述算法,则下划线处代码应填:
H=float(input("输入身高,单位为米:"))
If h<1.2:
print("免票")
elif :
print("请购半价票")
else:
prin("请购全价票")
-
3、(程序设计题)医院广]诊大厅有一台自动饮料售货机,其中有三种饮品:
⒈牛奶[数量:3;价格:8]
⒉苏打水[数量:5;价格:6]
⒊瓶装水[数量:2;价格:5]
顾客需要先依次输入购买商品的id和数量,再投币购买。
①若投币金额超出饮品总价格,则显示“购买成功,退还*元!”。
②若投币金额不足,则显示“金额不足!”。
③若购买数量过多,则显示“商品库存不足!”。
④若输入的商品id不存在,则显示“商品未找到!”。
程序运行结果如图所示,请编写Python程序实现上述功能。
-
4、用Python程序实现圆面积的计算。若输入的圆半径为大于等于0的实数,则输出圆面积(保留两位小数);若输入的圆半径为负数,则输出“输入的圆半径为负”。为实现上述功能,请回答下列问题:(1)、划线处应填的代码为:
PI=3.14159
#命名常量
radius =float(input("请输入圆半径:")
if radius >= 0:
prin("半径为"+str(radius)+ "的圆面积是"+str(area))
else:
print("输入的圆半径为负")
(2)、调试程序发现,出现错误提示“IndentationError: expected an indented block" ,请说明错误的原因并改正。 -
5、某网络平台登录时需要用户输入用户名和密码进行验证。用Python程序实现一个“验证用户登录”的程序,划线处应填的代码为:
dic={"Name":"admin","Password":"j1l234y"}
user-input("请输入用户名:")
psd-input("请输入密码:")
if
print("用户名或密码错误!")
else:
print(" 登录成功!")
-
6、有如下Python程序段:
a="Welcome!"
if len(a)>9:
y=a[0:2]
elif len(a)>5:
y=a[3:7]
else:
y=a[0:3]
该程序段运行后,变量y的值是。
-
7、有如下Python程序段:
a=int(input("输入a:"))
if a<=10:
y=a
else:
y=-a
print(y)
若要测试所有分支结构的程序代码是否正确,下列测试数据中最恰当的是( )
A、9,10 B、10,11 C、11,12 D、-10,10 -
8、某化合物CnHnOn由C、H、O三种元素组成,已知C的相对原子质量为12,H的相对原子质量为1,0的相对原子质量为16。某元素的质量分数=(该元素的相对原子质量*该元素的原子个数)/该化合物的相对分子质量。若用Python程序实现C元素质量分数的计算,请回答下列问题:(1)、用变量a存储化合物中的某一个原子,若a为小写字符,要将其转换为大写字符,下列选项中正确的是( )A、chr(ord(a)-32) B、chr(ord(a)+32) C、chr(ord(a)-26) D、chr(ord(a)+26)(2)、若用变量a存储化合物CnHnOn(输入字符不区分大小写,如:输入“C2h4o2”),用字典dic存储元素和原子质量的对应关系,请将实现上述功能的代码补充完整。
a-input("请输入化合物:") #例如输入“C2h4o2”
dic= {"C":12,"H":1,"O":16,":12,"h":l,"o":16}
sum= #求C元素质量
sum_ total=
result-sum/ sum_total
print("C元素的质量分数:",result)
-
9、天干地支,源自中国远古时代对天象的观测,十天干和十二地支依次相配,组成六十个基本单位,两者按固定的顺序相互配合,组成了天干地支纪年法。已知年份的最后一位数字对应天干,用已知年份除以12,求得的余数代表地支。对应关系如下:
数字
4
5
6
7
8
9
0
1
2
3
天干
甲
乙
丙
丁
戊
己
庚
辛
壬
癸
数字
4
5
6
7
8
9
10
11
0
1
2
3
地支
子
丑
寅
卯
辰
巳
午
未
申
酉
戌
亥
(1)、按照上述算法,2020年对应的天干地支为 。(2)、下列左侧Python代码能够实现上述计算功能。现将右侧代码中变量s1和s2的值做下列修改,要实现同样的程序功能,右侧代码中加框处应为。year- int(input("请输入年份:"))
s1="庚辛壬癸甲乙丙丁戊己
s2="申酉戍亥子丑寅卯辰巳午未"
a=year%10
b=year%12
c=s1[a]+s2[b]
print("天干地支为:",c)
|year =int(inpu("请输入年份:"))
s1="甲乙丙丁戊已庚辛壬癸"
s2="子丑寅卯辰已午未申酉戌亥"
a=year%10
b=year%12
print("天干地支为:",c)
(3)、若用字典来实现相同的程序功能,请将下划线处代码补充完整。year-int(input("请输入年份:")
dic1= #天干字典
dic2= #地支字典
a=year%10
b=year%12
c=dic1[a]+dic2[b]
print("天干地支为:",2)
-
10、(程序设计题)加密解密问题。小明设计了将明文字符(大、小写字母)转为密文字符的加密算法,加密过程如下:
步骤一:输入明文字符,将该字符转换成ASCII;
步骤二:将ASCII码转换成十六进制字符串;
步骤三:将产生的十六进制字符串进行头尾互换并输出。
若用Python程序实现上述加密过程,请回答下列问题:
(1)、明文字符“A”经加密后得到的十六进制字符串为。(2)、hex(x)函数实现将十进制数转换成十六进制字符串,如hex(65)="0×41",为实现步骤一和步骤二,请利用函数完善下列代码。s=input("请输,入明文字符(大写字母或小写字母):")
a= #将字符转换为ASCII
b= #将ASCII码转换成十六进制字符串
(3)、(多选题)为实现步骤三,下列选项中不正确的是( )A、
B、
C、
D、
(4)、上机调试实现上述加密过程,思考并完成解密过程。提示:int(x,16)函数实现将十六进制字符串x转换成十进制整数ASCII值。
-
11、假设在平面内有一个三角形,其边长分别为a、b、c。三角形的面积S可由以下的海伦公式求得:S= ,公式中p= ,为半周长。利用Python实现海伦公式求解三角形面积,有下列问题:(1)、输入三角形的三边长分别为5,6,7,下列赋值方法中有误的是( )A、
B、[a,b,c]=[5,6,7]
C、a=5,b=6,c=7
D、a,b,c=5,6,7
(2)、将下列代码补充完整。a = float(input("输入边长a:"))
b = float(input("输入边长b:"))
c = float(input("输入边长c:"))
p=(a+b+c)/ 2
print("三角形的面积:",area)
-
12、趣味数字游戏。输入任意一个三位数,将两个这样的三位数相连组成一个六位数,该六位数依次除以7,11,13后得到的商就是原来的三位数。若将输入的三位数存储到变量a中,生成的六位数存储到变量b中,编写Python程序实现上述趣味验证,则下列语句不正确的是( )A、
B、
C、
D、
-
13、执行以下Python程序段后,变量x的值为( )
x=3.772
y=-8
x=int(x)+abs(y)
y=x+y
x=x-y
print(x)
A、3 B、8 C、20 D、-8 -
14、在Python中,下列函数值为整数8的是( )A、abs(float(-8)) B、str(8) C、abs(int(-7.7)) D、len("12345678")
-
15、“回文”是古今中外都有的一种修辞方式和文字游戏,如“我为人人,人人为我”等。在数学中也存在这样一类数具有这样的特征,称为回文数。例如: 123454321为回文数。(1)、若将任意一个三位数存储到整型变量a中,下列语句可实现回文数的是( )A、
B、
C、
D、
(2)、若将任意一个三位数存储到字符串变量a中,下列语句不能实现回文的是( )A、new=a+a[2]+a[1]+a[0] B、new=a+a[::-1] C、new=a+a[-3]+a[-2]+a[-1] D、new=a+a[-1::-1] -
16、小明的个人基本信息包括姓名学号班级、性别年龄、爱好等。(1)、(多选)若用Python存储小明的个人信息,下列表述正确的是( )A、info={小明,190103,101班,男,17,篮球} B、info=[小明,190103,101班,男,17,篮球] C、info="小明","190103","101班","男","17","篮球" D、info=["小明","190103","101班","男",17,"篮球"] E、info={"姓名":"小明","学号":"190103","班级":"101班","性别":"男","年龄":17,"爱好"::"篮球"}(2)、若用列表存储小明的个人信息,要修改小明的班级为"102班",则修改的语句为;若用字典来存储小明的个人信息,则修改的语句为。
-
17、程序设计题:身份证的编码问题。中国大陆居民身份证号码由18位数字组成:第1至6位的数字为地址代码,表示某省某市某区或县;第7至14位的数字代表居民的出生年月日;第15至17位的数字代表同一辖区内、同年同月同日出生的顺序号,其中第17位数字表示性别,奇数为男性,偶数为女性;第18位数字代表校验码。校验码是0~10这十个数字中的任意一个,其中10用X表示。
校验码的计算方法如下:
①将身份证号码的前17位数字分别乘以对应的系数。对应关系如下:
号码位
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
系数
7
9
10
5
8
4
2
1
6
3
7
9
10
5
8
4
2
②将17位数字和系数相乘的结果累计求和;
③用所求的和除以11得到余数;
④用余数与身份证号码的最后一位校验码进行对应,对应关系如下:
余数
0
1
2
3
4
5
6
7
8
9
10
校验码
1
0
X
9
8
7
6
5
4
3
2
(1)、小明身份证号码的前17位为33900520020808621,则他的第18位校验码为 。(2)、小明想设计一个Python程序用于身份证号码验证,实现如下功能:输入身份证号码,输出出生日期、性别,实现判断最后一位校验码是否正确。部分程序代码如下所示,请补全代码并上机调试。ID=input("请输入十八位身份证号码: ")#输入身份证号码
sex={0:"女",1:"男",2:"女",3:"男",4:女,5:"男": 6:"女",7:"男"."8:"女",9:"男"}
ID_ birth=ID[6:14]
ID_ sex=ID[16]
ID_ check=ID[17]
#求出year,month,day
①
print("出生日期: "+year+"年"+ month+"月"+day+"日")
print("性别:", ② )
ID=list(ID) #把字符串转成列表
ID=list(map(int, ID[0:17])) #把前17个元素转成整型
ID_ CHECK=["1","0'","X'","9“,"8","7”,"6“,"5”,"4","3","2"]
③
#用列表存储每一位权值
#17位数字和系数相乘的结果累计求和
#求余数
#求验证码
print("验证码是否正确:", check-= =ID_check)
-
18、火柴棍游戏。用火柴棍拼成数字0~9,具体拼法如图:
(1)、编写Python程序实现:运行程序时输入任意一个数字,输出所需火柴棍的数量,如图所示。
完善下列代码:
num=int(input("请输入一个一位数:"))
match=
count=
print("共需火柴棍:",count)
(2)、修改上述程序,实现输入任意一个三位数,输出所需火柴棍的数量,如图所示。
请完善下列代码。
方法一:
Num=int(input("请输入一个三位数: "))
count-match[a]+match[b]+match[c]
print("共需火柴棍: ",count)
方法二:
num=input("请输入一个三位数: "))
count-match[a]+match[b]+match[c]
print("共需火柴棍: ",count)
(3)、编写Python程序,实现输入火柴棍的数量,输出符合该火柴棍数的三位数组合。 -
19、某班级组建研究性学习小组,小组成员的分组情况以及学员成绩分别用Python存储在students和scores中。若students= {"第一组”:["小红","小明”,"小张"], "第二组":"小黄","小霞","小斌"],"第三组":["小蓝”,"小华","小诚"]} ,scores=([“小红":90,"小明":80,"小张":75}, {"小黄”:86,"小霞":70,"小斌":89);{"小蓝":67,"小华":90,"小诚":77}],则要访问第二组第1位学员姓名的表达式为;要访问小明的学习成绩的表达式为。
-
20、学校举行元旦文艺汇演比赛,需要计算每位选手的比赛得分。比赛的计分规则如下:去掉一个最高分和一个最低分,求剩下得分的平均分。若用Python程序实现上述计分功能,请回答下列问题:(1)、(多选)各评委对某选手的评分为83,85,87,75,95,87,88,90,79,80。在核对成绩时发现有误,错误录入的得分为score=(83,85,878,80,788,90,79,80],以下选项中能实现正确修改的是( )A、score[3:6]=[75,95,87] B、score[4:6]=[75,95,87] C、score[-7:-4]=[75,95,87] D、score[-7:-5]=[75,95,87](2)、若评分列表score经过升序排序后为[75,79,80,83,85,87,87,88,90,95],则求评委的最高分的表达式为;最低分的表达式为 。