当前位置:首页>python>【第41期】21天养成编程习惯:Python刷题第07天

【第41期】21天养成编程习惯:Python刷题第07天

  • 2026-10-29 15:00:49
【第41期】21天养成编程习惯:Python刷题第07天

跟老马一起“升级打怪”学编程!

  • 涉及考试:计算机学会编程能力等级认证(GESP)、电子学会等级考试
  • 活动内容:提供不同等级的真题供小朋友们选择练习
  • 备考建议:根据自己备考的等级选择相应题目
  • 附加价值:可作为白名单比赛的备考训练
  • 本月打卡:七月CIE_Python打卡题目

Day07:CIE一级2023.09_编程题36

分数计算器:依次输入语文、数学、英语的分数,计算出总分以及平均分,并在一行输出。

要求:

(1)程序开始运行时,询问请输入语文成绩;

(2)输入一个数字后询问请输入数学成绩;

(3)输入一个数字后询问请输入英语成绩;

(4)最后输入英语成绩后,程序自动输出总分以及平均分,格式为:"你的总分为:*分,平均分为:*分"。(保留小数或者整数均可)

输入样例:

929892

输出样例:

你的总分为:282分,平均分为:94.0分

友情提示:

由于考试平台暂不支持eval()命令,同学们可以选用其他命令;当然如果您使用了,只要程序是正确的,我们阅卷时依然按照正常处理。

参考程序:

注意:仅供参考,考生可以自行设计,结果符合题意即可。

chinese = int(input("输入语文成绩"))math = int(input("输入数学成绩"))english = int(input("输入英语成绩"))total = chinese + math + englishavg = total / 3print("你的总分为:" + str(total) + "分,平均分为:" + str(avg) + "分")

Day07:CIE二级2023.03_编程题37

编写程序帮老师对英语试卷中的英文字母、数字和其他字符(注意:包括空格)进行分类并统计每种字符的数量。

输入样例:

**Welcome to 2023~!

输出样例:

字母:Welcometo,共9个数字:2023,共4个其它字符:**  ~!,共6个

参考程序:

注意:仅供参考,考生可以自行设计,结果符合题意即可。

程序1:

dic = {'字母': ['', 0], '数字': ['', 0], '其它字符': ['', 0]}s = input()for i in s:if i.lower() in'abcdefghijklmnopqrstuvwxyz':        dic['字母'][0] += i        dic['字母'][1] += 1elif i in'0123456789':        dic['数字'][0] += i        dic['数字'][1] += 1else:        dic['其它字符'][0] += i        dic['其它字符'][1] += 1print('字母:{},共{}个'.format(dic['字母'][0],dic['字母'][1]))print('数字:{},共{}个'.format(dic['数字'][0],dic['数字'][1]))print('其它字符:{},共{}个'.format(dic['其它字符'][0],dic['其它字符'][1]))

程序2:

s = input()letter = ''number = ''other = ''for i in s:if i >= 'a'and i <= 'z'or i >= 'A'and i <= 'Z':        letter += ielif i >= '0'and i <= '9':        number += ielse:        other += iprint('字母:{},共{}个'.format(letter, len(letter)))print('数字:{},共{}个'.format(number, len(number)))print('其它字符:{},共{}个'.format(other, len(other)))

程序3:

s = input()letter = ''number = ''other = ''for i in s:if i.isalpha():        letter += ielif i.isdigit():        number += ielse:        other += iprint('字母:{},共{}个'.format(letter, len(letter)))print('数字:{},共{}个'.format(number, len(number)))print('其它字符:{},共{}个'.format(other, len(other)))

Day07:CIE三级2022.12_编程题37

在三位数的自然数中,找出至少有一位数字是5的,至少能被3整除的所有整数,并统计个数,具体代码如下:

count = 0lst = []for i in range(____①____):if i % 3 == 0:        a = i % 10        b = i // 10 % 10        c = ____②____if ____③____:            count += 1            lst.append(i)print("这样的三位数有:", lst)print("总数量有:", count)

参考答案:

① 100, 1000 或者 100, 1000, 1;

② i//100;

③ a==5 or b==5 or c==5。


Day07:CIE四级2023.12_统计高分问题

小张在学习对分查找后,想利用该思路来实践一下,加深对该算法的理解。于是他按老师的要求,统计期末考试成绩,总分比他高的同学有多少个?

他的思路是,首先将全区所有学生的成绩降序排序,然后利用对分查找思想解决。他编写的代码如下,请完善划线处的代码。

cj = [654, 643, 621, 612, 609, 606]  # 学生成绩存列表cj并已经降序排序defdfsearch(key):    i = 0    j = len(cj) - 1while i <= j:        m = (i + j) // 2if cj[m] > key:            _____①_____else:            j -= 1return _____②_____key = int(input('输入待查找的成绩'))pos = _____③_____print('高于', key, '分的人数有', pos)

参考答案:

① i += 1或等价表达式

② i或等价表达式

③ dfsearch(key)或等价表达式


青少年编程竞赛交流

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的21天刷题打卡、等级考试测评、教育部白名单比赛辅导以及青少年编程组队竞赛等活动。

最新文章

随机文章