4.编写程序,输入n个学生的学号和成绩(有1位小数),按成绩从高到低排序输出,n 小于50,学号小于10位。
时间: 2023-12-20 10:03:49 浏览: 70
编写程序,输入并保存5名学生的信息,计算出平均分,再按照成绩从高到低的顺序输出他们的信息 学生信息包括学号、姓名、成绩
以下是Python的代码实现:
```python
n = int(input("请输入学生人数:"))
stu_dict = {}
for i in range(n):
stu_info = input("请输入第{}个学生的学号和成绩(以空格分隔):".format(i+1))
stu_id, stu_score = stu_info.split()
stu_dict[stu_id] = float(stu_score)
sorted_stu = sorted(stu_dict.items(), key=lambda x: x[1], reverse=True)
print("按成绩从高到低排序输出:")
for stu in sorted_stu:
print(stu[0], stu[1])
```
首先,我们输入学生人数 `n`;然后使用一个字典 `stu_dict` 存储学号和成绩。接下来,通过循环输入每个学生的学号和成绩,并将其添加到 `stu_dict` 中。
使用 Python 内置的 `sorted()` 函数进行按成绩从高到低排序,排序的关键字为字典中的值(即学生的成绩),并使用 `reverse=True` 参数指定降序排列。
最后,遍历排序后的列表,输出学生的学号和成绩。
阅读全文