测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A37155. 有十位选手参加某项比赛,共有10位评委参与评分。每位选手得分已保存在“score1.txt”文件中,如图所示。第一行表示1号选手的所有得分,第二行表示2号选手的所有得分,依次类推。最终得分的计分规则为去掉一个最高分,去掉一个最低分,求余下分数的平均分。请找出最终得分最高的选手。“score1.txt”文件的内容如图所示。程序代码如下:with open("/data/ _____①_____ "…

填空题 困难

题目描述

有十位选手参加某项比赛,共有10位评委参与评分。每位选手得分已保存在“score1.txt”文件中,如图所示。

第一行表示1号选手的所有得分,第二行表示2号选手的所有得分,依次类推。最终得分的计分规则为去掉一个最高分,去掉一个最低分,求余下分数的平均分。请找出最终得分最高的选手。“score1.txt”文件的内容如图所示。

程序代码如下:

with open("/data/  _____①_____   ", encoding="UTF-8") as f:

data = f.readline().strip()

i = 0

m = 0

while data:

_____②_____        

score = list(map(float, data.split()))

result = (sum(score) - min(score) - max(score)) / (len(score) - 2)

if   _____③_____   :

m = result

pos = i

data =   _____④_____   .strip()

print("成绩最佳的选手是:" + _____⑤_____ + "号,得分:" + str(m) + "分")

请在画线处填入正确的代码。

参考答案

with open("/data/score1.txt", encoding="UTF-8") as f: data = f.readline().strip() i = 0 m = 0 while data: i+=1 score = list(map(float, data.split())) result = (sum(score) - min(score) - max(score)) / (len(score) - 2) if result>m : m = result pos = i data =f.readline().strip() print("成绩最佳的选手是:" +str(pos)+ "号,得分:" + str(m) + "分"
上一题 下一题