涉及考试:计算机学会编程能力等级认证(GESP)、电子学会等级考试 活动内容:提供不同等级的真题供小朋友们选择练习 备考建议:根据自己备考的等级选择相应题目 附加价值:可作为白名单比赛的备考训练 本月打卡:本月CIE_Python打卡题目
小明去超市买了苹果和香蕉,苹果每斤6.5元,香蕉每斤4.8元。小明买了斤苹果和斤香蕉(和都是不是0的整数),请写一段程序计算小明一共需要支付多少钱?
要求:
(1)程序开始运行后,需要用户输入和的值(整数),可以分两次输入;
(2)用户输入斤数时,要有提示语,提示语分别为:“请输入苹果斤数:”、 “请输入香蕉斤数:”;
(3)计算公式正确,正确实现总费用的计算逻辑;
(4)输出格式正确,输出字符串包含提示文本,如“小明一共需要支付:”,“元”;
(5)代码规范,运行正常。
友情提示:
由于考试平台暂不支持eval()命令,同学们可以选用其他命令;当然如果您使用了,只要程序是正确的,我们阅卷时依然按照正常处理。
参考程序:
注意:仅供参考,考生可以自行设计,结果符合题意即可。
# 1. 输入数据:分两次输入,并转换为整数apple_weight = int(input("请输入苹果斤数:"))banana_weight = int(input("请输入香蕉斤数:"))# 2. 处理数据:根据单价和重量计算总价total_cost = apple_weight * 6.5 + banana_weight * 4.8# 3. 输出结果:注意输出格式的拼接print(f"小明一共需要支付:{total_cost}元")从键盘输入任意字符串,按照下面要求分离字符串中的字符:
1、分别取出该字符串的第偶数位的元素(提醒注意:是按照从左往右数的方式确定字符串的位置);
2、并依次存储到一个列表中;
3、输出这个列表。
参考程序:
注意:仅供参考,考生可以自行设计,结果符合题意即可。
利用while循环:
s = input('请输入字符串:')lst = []i = 1while i<len(s): lst.append(s[i]) i += 2print(lst)利用for循环:
s = input('请输入字符串:')lst = []for i in range(1,len(s),2): lst.append(s[i])print(lst)如下图有一个名为“book.csv”的文件,小明想计算所有库存书籍的总价,于是编写了下面代码。请将红色①②处的代码补充完整。

b = 0s = 0with open('/data/book.csv', 'r', encoding='utf-8') as f:for line in f__①___(): a = line.strip("\n").split(",") b = b + 1if b > 1: # 第一行是标题,所以从第二行开始计算 s = s + int(a[1]) *__②___ print('总价:', s)参考答案:
① readlines
② int(a[2])
商超采用会员制,客户的消费信息如会员号、姓名和积分如下表所示,小方的爸爸想编写一个客户信息管理系统,其中有一个功能是:输入会员号,查询该会员的积分。
小方知道后,就跃跃欲试,他首先从数据库读取客户信息到列表中,其中存储第条记录的会员号,存储第条记录的姓名,存储第条记录的积分;他首先将数组中数据按会员号升序排序,然后用二分查找算法查找会员号对应的积分信息。代码如下,完善划线处的代码:
defbubble_sort(d):for i in range(len(d) - 1):for j in range(len(d) - 1, _____①_____, -1):if d[j][0] < d[j - 1][0]: d[j], d[j - 1] = d[j - 1], d[j]defbin_search(d, key): i, j = 0, len(d) - 1while i <= j: m = (i + j) // 2if _____②_____:return mif key > d[m][0]: i = m + 1else: j = m - 1return-1# 从数据库读取会员信息存列表data中,代码略data = [ [8011, '张飞', 12345], [8012, '李强', 34512], [7812, '李好', 45321]]bubble_sort(data)key = int(input('输入会员号:'))m = _____③_____if m != -1: print(data[m][1], '先生/女士:您的积分是:', data[m][2])else: print('该会员号不正确')参考答案:
① i
② d[m][0] == key
③ bin_search(data, key)
青少年编程竞赛交流
「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的21天刷题打卡、等级考试测评、教育部白名单比赛辅导以及青少年编程组队竞赛等活动。
