Python蓝桥杯训练(详解和拓展)

一.题目描述(成绩分析)

小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。

请计算这次考试的最高分、最低分和平均分。

输入描述

输入的第一行包含一个整数 n\ (1 ≤ n ≤ 10^4)n (1≤n≤104),表示考试人数。

接下来 nn 行,每行包含一个 0 至 100 的整数,表示一个学生的得分。

输出描述

输出三行。

第一行包含一个整数,表示最高分。

第二行包含一个整数,表示最低分。

第三行包含一个实数,四舍五入保留正好两位小数,表示平均分。

输入输出样例输入输出样例

示例

输入

7 
80
92
56 
74 
88 
99
10

输出

99

10

71.29

import os
import sys


# 请在此输入您的代码
num=int(input())
score=[]#创建一个空列表来储存成绩数据
for i in range(num):
    s=int(input())#关键输入,随着num的变化遍历出s的值
    score.append(s)#添加方法把成绩数据添加到列表中
max_score=max(score)
min_score=min(score)
avge=sum(score)/num
print(max_score)
print(min_score)
print("{:.2f}".format(avge))#四舍五入保留正好两位小数,表示平均分

format中格式的处理

在占位符中还可以有格式化控制符,对字符串的格式进行更加精准 的控制。格式化控制符位于占位符索引或占位符名字的后面,之间用冒号分隔,语法:{参数序号:格式控制符}或{参数名:格式控制符}。字符串的格式化控制符及其说明如下表所示:

Python蓝桥杯训练(详解和拓展)_第1张图片

python保留小数位的两种方法

方法一:format函数

print('{:.3f}'.format(1.23456))

1.235

>>> print(format(1.23456, '.2f'))

1.23

1

2

3

4

方法二:’%.xf’方法

print('%.2f' % 1.23456)

1.23

二、题目描述(饮料换购)

乐羊羊饮料厂正在举办一次促销优惠活动。乐羊羊 C 型饮料,凭 3 个瓶盖可以再换一瓶 C 型饮料,并且可以一直循环下去(但不允许暂借或赊账)。

请你计算一下,如果小明不浪费瓶盖,尽量地参加活动,那么,对于他初始买入的 n 瓶饮料,最后他一共能喝到多少瓶饮料。

输入描述

输入一个整数 n(0n(0<n<1000),表示开始购买的饮料数量。

输出描述

输出一个整数,表示实际得到的饮料数

输入输出样例

示例

输入

100

输出

149

import os
import sys

# 请在此输入您的代码
n=int(input())#输入一个整数n,设置初始值
sum=n #喝的饮料总数先有购买的n个然后后面在加上换购的数量A
while n>=3:#当>=3时,进入循环,由于换来的饮料也有瓶盖所以不能用if,当n小于3时循环结束
  A=n//3#代表用瓶盖换来的饮料数
  B=n%3#代表换购后剩余的瓶盖数
  sum+=A#总数加上换来的饮料数
  n=A+B#n表示最新能换购的饮料数
print(sum)

while 判断条件(condition)

: 执行语句(statements)……

  1. while的条件需得到布尔类型,True表示继续循环,False表示结束循环
  2. 需要设置循环终止的条件,如i += 1配合 i < 100,就能确保100次后停止,否则将无限循环
  3. 空格缩进和if判断一样,都需要设置
  4. continue的作用是:
    中断所在循环的当次执行,直接进入下一次
  5. break的作用是:
    直接结束所在的循环
  6. 注意事项:
    continue和break,在for和while循环中作用一致
    在嵌套循环中,只能作用在所在的循环上,无法对上层循环起作用

 

你可能感兴趣的:(蓝桥杯,python,开发语言)