2025年7月5日全国青少年信息素养大赛Python编程复赛真题及答案+解析

2025年Python编程复赛真题及解析
该文章已生成可运行项目,

喜欢就

关注

我们哦~

全国信息素养大赛复赛题目下载链接:

链接:

https://pan.quark.cn/s/4ab6bd83be8a

2025年全国青少年信息素养大赛Python编程全年级复赛真题及答案+解析

一、选择题

第 1 题    单选题以下变量命名正确的是(  )

A.2apple
B.@orange
C.banana
D.if

第 2 题    单选题运行以下Python代码,输出结果是(   )

nums = [3, 6, 9]
nums.append(12)
nums.remove(6)
print(nums)

A.[3,6,9,12]
B.[3,9,12]
C.[3,6,12]
D.[6,9,12]

第 3 题    单选题在 Python 中,运行以下代码,当输入5和3时(输入5按回车键后再输入3并回车),输出结果是什么?( )

num1 = input()
num2 = input()
result =num1 + num2
print(result)

A.8
B.53
C.代码错误
D.5+3

第 4 题    单选题若要将列表 colors =["红色",“蓝色”"绿色"〕中的“蓝色”修改为“紫色”,应使用(   )

A.colors [0]="紫色”
B.colors [1]="紫色”
C.colors [2]="紫色”
D.colors.append("紫色")

第 5 题    单选题执行以下代码,变量 result 的值可能是(   )

from random import *
x= randint(1, 3)
y= randint(2, 4)
result = x + y
print(result)

A.1
B.3
C.2
D.8

答案解析:

  • • 第一题:C (变量命名规则:只能包含字母、数字、下划线,且不能以数字开头,不能是Python关键字)

  • • 第二题:B (执行步骤:先添加12得到[3,6,9,12],再删除第一个6,结果为[3,9,12])

  • • 第三题:B (input返回字符串,"5" + "3" = "53")

  • • 第四题:B (列表索引从0开始,"蓝色"在索引1处)

  • • 第五题:B (x范围1-3,y范围2-4,和最小3(1+2),最大7(3+4),可能值为3)

二、编程题

第一题

题目描述
小明的宠物狗每天需要吃3次狗粮,每次吃固定克数。
编写程序,输入每次喂食的克数,计算并输出一周(7 天)总共需要准备多少克狗粮。
输入描述

一个正整数,表示每次喂食的克数。

输出描述

一行,一个整数,表示一周总克数。

样例1
输入:

50

输出:

1050

第二题

题目描述
在公司半年会上举办了抽奖活动。抽奖箱里的号码牌上写有数字。为庆祝公司成立五周年以及在两年内成功上市,特别规定:若抽中的号码能同时被2和5 整除,那么抽奖者将获得一台平板电脑。现在请编写程序,判断抽奖者是否能拿到平板电脑。
输入描述

一个正整数,代表抽奖的号码,范围是1-1000。

输出描述

若输入的号码能同时被2和5整除,输出 “获得平板”,否则输出 “没有中奖”。

样例1
输入

10

输出

获得平板

第三题

题目描述
在一个神秘的魔法世界里,小魔法师每天都会去收集星星。魔法世界的星星收集规则很有趣,每天收集的星星数量都会比前一天多1 颗。小魔法师一开始(第 1 天)收集了 1 颗星星。现在,需要编写一个程序,根据小魔法师收集星星的天数,计算出他总共收集了多少颗星星。
输入描述

输入一个正整数n(1 < n ≤ 1000),表示小魔法师收集星星的天数。

输出描述

输出一个整数,表示小魔法师在n 天内总共收集的星星数量。

第四题

题目描述
在奇幻世界“阿尔卡纳” 中,年轻的魔法师洛基正在学习符文魔法。魔法师可以将两种基础符文 ——“火符” 和 “风符” 组合在魔杖上,以施展不同强度的法术。

  • • 火符初始能量为a 点,风符初始能量为 b 点。

  • • 根据古老的魔法规则,这两种符文在施法前需要先进行能量校准。

    • • 火符的实际强度会变为:x=a+7(火符吸收环境中的热能)。

    • • 风符的实际强度会变为:y=b−3(风符释放部分能量稳定自身)。

  • • 校准后,洛基每次施法只能使用同一种符文(可以多个),不能混合使用不同符文。

  • • 例如:

    • • 可以选择使用3 个火符(获得3x点强度)

    • • 或 2 个风符(获得2y点强度)

    • • 但不能同时使用火符和风符来获得精确的强度值。

  • • 洛基的导师告诉他:当两种符文的强度值互质时,总会存在一个最大的魔法强度值,超过这个值的任何强度都可以通过某种符文组合达到。作为测试,导师要求洛基计算出这个临界强度值。

输入描述

一行包含两个正整数a和b(1≤a,b≤109,保证a+7与b−3互质且b>3)。

输出描述

输出一个整数,表示洛基能够达到的临界魔法强度值。

第五题

题目描述
小明开了一家糖果店,店里只卖三种糖果:

  • • 棒棒糖:每根5 元。

  • • 巧克力:每块 8 元。

  • • 果冻糖:每颗 10 元。

小朋友小华带着n元钱来到糖果店,他希望购买若干糖果(可以只买一种或多种),恰好花完所有的钱。这样的购买方案被称为 “完美” 购买。
示例:
当n=20元时,有以下几种购买方案:

  • • 4 根棒棒糖(5×4=20元)。

  • • 2 根棒棒糖 + 1 颗果冻糖(5×2+10×1=20元)。

  • • 2 颗果冻糖(10×2=20元)。

任务
对于给定的金额n,计算所有可能的 “完美” 购买方案的总数。
输入描述

一个整数n,表示小华带的钱数。

输出描述

一个整数n,表示满足条件的购买方案的总数。

答案解析

  • • 第一题:

# 读取每次喂食的克数,转为整数计算
grams = int(input())
# 计算一周(7天)的总喂食量:每次克数 × 每天3次 × 7天
print(grams * 3 * 7)
  • • 第二题:

# 读取抽奖号码
num = int(input())
# 判断是否同时被2和5整除(即被10整除)
if num % 10 == 0:
    r = "获得平板"
else:
    r = "没有中奖"
print(r)
  • • 第三题:

# 解法1
# 读取收集星星的天数
n = int(input())
# 等差数列求和公式:总和 = n * (n + 1) / 2
print(n * (n + 1) // 2)

# 解法2
# 读取收集星星的天数
n = int(input())
total = 0  # 初始化星星总数
# 从第1天到第n天循环累加每天的星星数
for day in range(1, n + 1):
    total += day
print(total)  # 输出总数
  • • 第四题:

# 读取初始能量值,转为整数
a, b = map(int, input().split())
# 计算校准后的符文强度
x = a + 7  # 火符吸收能量
y = b - 3  # 风符释放能量
# 根据互质定理计算最大不可组合数:x*y - x - y
print(x * y - x - y)
  • • 第五题:

# 读取总金额
n = int(input())
count = 0# 初始化方案计数器

# 遍历棒棒糖可能的购买数量
for i inrange(n // 5 + 1):
    # 遍历巧克力可能的购买数量
    for j inrange((n - 5 * i) // 8 + 1):
        # 计算剩余金额
        remaining = n - 5 * i - 8 * j
        # 检查剩余金额是否能被果冻糖整除
        if remaining >= 0and remaining % 10 == 0:
            count += 1# 找到有效方案,计数器加1
print(count)  # 输出总方案数

信息素养大赛图形化编程复赛考点总结

本文章已经生成可运行项目
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值