选秀节目打分算法实现
需积分: 50 97 浏览量
更新于2024-07-23
收藏 170KB DOC 举报
"该资源是一道华为公司机试题目,涉及选秀节目的评分系统设计。要求编写一个`cal_score`函数,根据给定的专家评委和大众评委的分数数组以及他们的类型计算选手的最终得分。评分规则是按照专家评委和大众评委的平均分加权求和,其中专家评委的权重为60%,大众评委的权重为40%。如果不存在大众评委,则仅取专家评委的平均分为最终得分。"
在该机试题中,我们需要理解以下几个关键知识点:
1. 数据结构与数组:
- `score[]` 数组存储了所有评委的打分,而 `judge_type[]` 数组则记录了这些分数对应的评委类型(1 代表专家,2 代表大众)。
- 这两个数组是同步的,即 `score[i]` 和 `judge_type[i]` 对应同一个评委的评分和类型。
2. 变量定义:
- `expert` 用于累加专家评委的分数,`dazhong` 用于累加大众评委的分数。
- `number` 记录专家评委的数量,`zongfen` 存储最终的总分。
3. 循环遍历:
- 使用 `for` 循环遍历 `score[]` 和 `judge_type[]` 数组,通过判断 `judge_type[i]` 的值来区分并累加专家和大众评委的分数。
4. 平均分计算:
- 当计算平均分时,需要将总数除以评委数量,并使用 `(int)` 进行整数取整。
5. 加权求和:
- 如果存在大众评委,计算专家评委的平均分(`expert/number`)和大众评委的平均分(`dazhong/(N-number)`),然后根据规则(0.6 和 0.4 的权重)计算总分。
- 若没有大众评委,总分直接取专家评委的平均分为整数值。
6. 函数接口:
- 函数 `cal_score` 接受三个参数:分数数组 `score[]`,评委类型数组 `judge_type[]`,以及评委总数 `n`,返回选手的最终得分。
7. 主程序流程:
- 在 `main` 函数中,用户被要求输入 `N` 个评委的分数和对应类型,然后调用 `cal_score` 函数计算得分并输出。
这道题目旨在考察编程者对数组操作、条件判断、循环逻辑、数学计算以及函数设计的理解和应用能力。通过解决此问题,可以提高处理实际问题的编程技巧,同时加深对数据处理和算法设计的认识。
点击了解资源详情
点击了解资源详情
点击了解资源详情
122 浏览量
2013-10-23 上传
2023-05-23 上传
点击了解资源详情
whwlong
- 粉丝: 0
- 资源: 1
最新资源
- 休闲美食在线订餐网站模板下载_休闲 美食 餐厅 在线订餐 企业 外卖 美食 烧烤 宽屏 响应式 bootstrap.zip
- corona_hhu
- 30DayChartChallenge:#30DayChartChallenge制作的图表
- intedact:直接在Jupyer笔记本中获取熊猫数据框的交互式单变量和双变量EDA
- 导入多个文件:它导入多个不同案例的文件-matlab开发
- 公路桥梁隧道施工组织设计-山岭重丘二级公路施工组织设计方案
- kubernetes-the-hard-way-automated:我以Kelsey Hightower的笔记作为开始学习kubernetesdocker
- Week10-As3-WebStack315
- ame-furu-crx插件
- 老鼠
- rp-pdm15:伊利诺伊大学研究园,实用数据挖掘,2015年夏季课程
- BrandConsult.BoosterUsa.gaCO1mY
- ShockleyQueisser:用于计算 Shockley-Queisser 效率极限的代码 + 数据文件-matlab开发
- daddy:用于EscaperPattern的C ++ PureEngine
- advenced-oo:有关python 3和高级面向对象范例的培训
- 捕鱼消消乐小游戏源码,欢乐消消乐小程序源码