题目描述
小蓝给学生们组织了一场考试,卷面总分为 100 分,每个学生的得分都是一个 0 到 100 的整数。
如果得分至少是 60 分,则称为及格。如果得分至少为 85 分,则称为优秀。
请计算及格率和优秀率,用百分数表示,百分号前的部分四舍五入保留整数。
输入描述
输入的第一行包含一个整数 n(1<=n <=10^4),表示考试人数。
接下来n行,每行包含一个 0 至 100 的整数,表示一个学生的得分。
输出描述
输出两行,每行一个百分数,分别表示及格率和优秀率。百分号前的部分 四舍五入保留整数。
输入输出样例
输入
7
80
92
56
74
88
100
0
输出
71%
43%
运行限制
最大运行时间:1s
最大运行内存: 256M
解决过程
import os
import sys
# 请在此输入您的代码
n=int(input())
score_list=[]
num_1=0
num_2=0
for i in range(n):
score=int(input())
score_list.append(score)
for j in score_list:
if j>=85:
num_1=num_1+1
elif j>=60:
num_2=num_2+1
num_2_0=num_2+num_1
end_1=round(num_1/n,2) #优秀
end_2=round(num_2_0/n,2) #及格
print(end_1,f'{round(end_2*100,0)}%')
print(end_2,f'{round(end_1*100,0)}%')
输出
最终完成代码
import os
import sys
# 请在此输入您的代码
n=int(input())
score_list=[]
num_1=0
num_2=0
for i in range(n):
score=int(input())
score_list.append(score)
for j in score_list:
if j>=85:
num_1=num_1+1
elif j>=60:
num_2=num_2+1
num_2_0=num_2+num_1
end_1=round(num_1/n,2) #优秀
end_2=round(num_2_0/n,2) #及格
print('{:.0f}%'.format(end_2*100))
print('{:.0f}%'.format(end_1*100))
输出
总结
输出时对小数有要求用format输出方法。