请编写程序,用户输入姓名和分数,将输入的记录加进文本文件,并显示当前的最高分的姓名。 王益诚,91 李裕,89 张洪源,79 马柏源,77 叶维鑫,68 熊杰,61 和金贵,88 杨钊,62 王林刚,92 彭林,84
时间: 2023-12-07 11:05:56 浏览: 26
好的,下面是 Python 的代码实现:
```python
# 打开文件,如果不存在则创建
file = open("scores.txt", "a+")
# 提示用户输入姓名和分数
name = input("请输入姓名:")
score = input("请输入分数:")
# 将记录加入文件
file.write(name + "," + score + "\n")
# 查找最高分的姓名
file.seek(0) # 将文件指针移动到开头
max_score = 0
max_name = ""
for line in file:
parts = line.strip().split(",")
if len(parts) != 2:
continue
try:
cur_score = int(parts[1])
except:
continue
if cur_score > max_score:
max_score = cur_score
max_name = parts[0]
# 显示最高分的姓名
if max_name:
print("当前最高分的姓名是:" + max_name)
else:
print("文件中没有有效的记录!")
# 关闭文件
file.close()
```
注意,为了方便起见,这里假设用户输入的姓名和分数都是合法的,并且文件中的每行记录都是以逗号分隔的。在实际应用中,还需要进行输入和文件格式的验证。