一.题目描述(成绩分析)
小蓝给学生们组织了一场考试,卷面总分为 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保留小数位的两种方法
方法一: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(0<n<1000)n(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)……
- while的条件需得到布尔类型,True表示继续循环,False表示结束循环
- 需要设置循环终止的条件,如i += 1配合 i < 100,就能确保100次后停止,否则将无限循环
- 空格缩进和if判断一样,都需要设置
- continue的作用是:
中断所在循环的当次执行,直接进入下一次- break的作用是:
直接结束所在的循环- 注意事项:
continue和break,在for和while循环中作用一致
在嵌套循环中,只能作用在所在的循环上,无法对上层循环起作用