- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE 2
计算机程序设计基础(C语言)
课程设计说明书
设计题目:歌唱比赛评分
班级:
姓名:
学号:
2021年3月
设计任务书
歌唱比赛评分
有十个选手参加歌唱比赛,十个裁判对每个选手的演唱进行打分,去掉一个最高分,去掉一个最低分,剩下分数的平均值作为每位选手最后的成绩。
要求:
(1)采用结构体定义每个选手的参赛编号,姓名以及十个裁判打出的分数;
(2)从键盘输入每个选手的相关信息:参赛编号,姓名和十个得分;
(3)计算每位选手的最后得分,并按分数由高到低排序;
(4)查询功能:输入参赛选手的编号或姓名(两个条件都能实现),便可输出该选手的得分以及排名;
以上功能采用菜单操作方式。
目录
TOC \o 1-3 \h \z \u 1.需求分析 4
2.总体设计 4
3.详细设计 5
4.程序运行结果测试与分析 6
5.结论与心得 8
1.需求分析
该程序本质需要解决多个对象的数据处理和排名问题,需要采用结构体进行存储选手的信息,根据得分情况进行排名。需要能够进行菜单选择操作。
2.总体设计
首先要对多个选手的数据进行存储,所以需要结构体数组来存储信息,去掉每位选手评分的最高分与最低分,其实就是对评分进行排序,去掉头尾,然后将得分累加获取总分,总分除以人数,获取平均分,也就是最终得分,再对每位选手的最终得分进行排序,获取排名。
总结,流程如下:
定义选手信息结构体
录入选手数据与得分
获取选手最终得分
根据最终得分获取排名
程序总体流程
3.详细设计
表1 自定义结构体Info内容
序号
名称
数据类型
长度
描述
1
nId
int
4
参赛编号
2
szName
字符数组
128
选手姓名
3
ScoreArr
整形数组
40
10个评分
4
nAve
int
4
平均分(最终得分)
表2 函数内容
序号
函数名
函数类型
入口值
函数功能
1
Run
void
NULL
处理消息(菜单)
2
AddInfo
void
NULL
录入选手信息与评分
3
ShowInfo
void
NULL
按照分数显示排名
4
SearchInfo
void
NULL
查询选手信息
4.程序运行结果测试与分析
主菜单
录入选手信息与评分
按照分数显示排名
按照参数编号查询选手得分与排名
按照选手姓名查询选手得分与排名
5.结论与心得
在开始做去掉最高分与最低分时,总是不知道该如何处理,因为数据是由数组存储,评分并不是从小到大的,很是苦恼,随后思考了一番,采用将评分数据进行排序,累加时不获取头尾即可,通过这样就去掉了最高分与最低分。
通过此次学习,使我对C语言的理解更加深刻了,了解了将数据存储在结构体数组当中,学习了排序算法等,对算法的了解更加通透,对以后的学习打下了基础。
文档评论(0)