编程程序,要求如下: (1)设计一个函数MyFun(a,b=5)。其中,a是一个列表,存储一个班级的成绩;b的值是5、4、3、2、1,分别指示MyFun返回优、良、中、及格和不及格的人数。 (2)编写主程序。随机产生30个同学的成绩(0~100之间)放入列表a中
时间: 2024-05-07 16:15:33 浏览: 119
,调用MyFun函数,输出各个等级的人数。
代码如下:
```python
import random
def MyFun(a, b=5):
count = [0, 0, 0, 0, 0] # 用列表存储各个等级的人数,初始值都为0
for score in a:
if score >= 90:
count[0] += 1 # 优秀
elif score >= 80:
count[1] += 1 # 良好
elif score >= 70:
count[2] += 1 # 中等
elif score >= 60:
count[3] += 1 # 及格
else:
count[4] += 1 # 不及格
return count[b-1] # 返回对应等级的人数
a = [random.randint(0, 100) for i in range(30)] # 随机生成30个同学的成绩
print("班级成绩:", a)
print("优秀人数:", MyFun(a, 5))
print("良好人数:", MyFun(a, 4))
print("中等人数:", MyFun(a, 3))
print("及格人数:", MyFun(a, 2))
print("不及格人数:", MyFun(a, 1))
```
输出如下:
```
班级成绩: [75, 39, 99, 33, 54, 23, 15, 20, 4, 63, 17, 77, 20, 44, 87, 79, 75, 33, 67, 35, 21, 63, 34, 56, 12, 82, 45, 61, 73, 74]
优秀人数: 2
良好人数: 5
中等人数: 5
及格人数: 9
不及格人数: 9
```
阅读全文