某班上有学生60人
1.python期末成绩随机生生成
2.现在要计算该班上学生平均成绩
3.且找到成绩低于平均成绩的学生和学生人数
4.用冒泡算法将最终成绩从大到小的有序输出
怎么写呀
import random
scores = [ random.randint(0,100) for _ in range(60) ]
average = sum(scores)/60
lowscores = [ i for i in scores if i<average ]
total = len(lowscores)
print('平均成绩:',average)
print('低于平均成绩的:',lowscores)
print('低于平均成绩的人数:',total)
for i in range(60-1):
for j in range(i+1,60):
if scores[i]<scores[j]:
scores[i],scores[j] = scores[j],scores[i]
print(*scores)
import random
#要生成60个不同的随机数,随机数大于1小于101
final_grade = random.sample(range(1,101), 60)
#计数平均值,sum()求final_grade列表元素的合计,len()列表长度
mean_grade = sum(final_grade)/len(final_grade)
under_mean = []
#循环列表
for i in final_grade:
#判断是否小于平均值
if i < mean_grade:
#小于则添加到under_mean列表中
under_mean.append(i)
#冒泡算法
array = final_grade
for i in range(1, len(array)):
for j in range(0, len(array)-i):
if array[j] > array[j+1]:
array[j], array[j+1] = array[j+1], array[j]
print(final_grade)
print(mean_grade)
print(under_mean)
print(array)
冒泡算法
https://blog.csdn.net/weixin_43790276/article/details/104033622