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

A45714. 7 个评委给每个选手打分, 评委分数中去掉最高分与最低分, 计算所得平均分是每个选手的最后得分, 保留 2 位小数。根据上述计算规则, 编写自定义函数完成程序功能, 完善代码。"""根据评委分数, 计算去掉最高分与最低分后的平均分, 保留 2 位小数函数名 def getScore(fs) :参数 fs: 表示评委的分数, 为列表返回值 : 返回选手的得分, 保留 2 位小数。"""def ge…

填空题 较难

题目描述

7 个评委给每个选手打分, 评委分数中去掉最高分与最低分, 计算所得平均分是每个选手的最后得分, 保留 2 位小数。

根据上述计算规则, 编写自定义函数完成程序功能, 完善代码。

"""

根据评委分数, 计算去掉最高分与最低分后的平均分, 保留 2 位小数

函数名 def getScore(fs) :

参数 fs: 表示评委的分数, 为列表

返回值 : 返回选手的得分, 保留 2 位小数。

"""

def getScore(fs) :

    maxfs = 0

    minfx = 999999

    n = ①

    for f in fs:

         if f > maxfs:

              ②

         elif f < minfx:

             minfx = f

     yxf = sum(fs) -maxfs-minfx

     avgfs = ③

     return avgfs

fs = [9. 56, 9. 68, 9. 78, 9. 67, 9. 81, 9. 21, 9. 75]

defen = ④

print(defen)

参考答案

def getScore(fs) : ​maxfs = 0 ​minfx = 999999 ​n = len(fs) - 2 ​for f in fs: ​ ​ if f > maxfs: ​ ​ maxfs = f ​ ​ elif f < minfx: ​ ​ ​ minfx = f ​ yxf = sum(fs) -maxfs-minfx ​ avgfs = int(yxf / n * 100 +0. 5) / 100 ​ return avgfs fs = [9. 56, 9. 68, 9. 78, 9. 67, 9. 81, 9. 21, 9. 75] defen = getScore(fs) print(defen)

答案解析

评分标准:

①len(fs) – 2 或等效答案; (3 分)

②maxfs = f; (3 分)

③int(yxf / n * 100 +0. 5) / 100 或等效答案; (4 分)

④getScore(fs) 。 (2 分)

上一题 下一题