- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
运动会成绩统实验报告
实验报告
运动员分数统计系统
学校:____________
学院:____________
班级:____________
姓名:____________
学号:____________
一、实验内容与要求:
运动会分数统计系统
1)任务:
参加运动会的n个学校编号为l~n。比赛分成m个男子项目和w个女子项目,项目编号分别为l~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。设计一个统计程序按名次产生各种成绩单、得分报表。
2)基本要求:
产生各学校的成绩单,内容包括各校所取得的每项成绩的项目号、名次、成绩、姓名和得分;产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分;均按名次排序。
比赛项目既要有径赛,又要有田赛。
二、数据结构的选择和概要设计:
数据结构
运动会分数统计程序用到的是顺序表的数据类型,由于一开始参赛学校跟参赛项目就是确定下来的,参赛学校即为顺序表表长,故顺序表的表长也就确定下来了,顺序表的主要内容有男子项目得分、女子项目得分、总项目得分、项目信息。节点主要内容包括:项目得分、项目成绩、项目名次、本项目是取前3名还是前5名。
顺序表类型如下:
typedef struct xmxx
{
float cj;//项目成绩
int df;//项目得分
int mc;//项目名次
int top;//本项目取前三名还是前五名
char name[20]; //名字
}xmxx;
typedef struct School /*定义结构体数组*/
{
int mz; //男子总得分
int wz; //女子总得分
int z; //总得分
xmxx xm[100];//项目
}School;
School sch[100];
概要设计
定义全局变量:
int n; //学校数目
int m; //男子项目数目
int w; //女子项目数目
int flag=0; //判断是否输入了数据
int flag=0; //查找姓名时判断是否查找到
所实现的功能函数如下:
csh()
通过for循环赋值,使结构体中各个数据全部清零,便于输入数据和排序。
然后再通过输入确定学校数目、男子项目数目、女子项目数目和各个项目是取前3名还是前5名。
shuru()
通过do...while循环,输入各个学校各个项目的成绩与姓名,学校编号为School[]数组地址加一,项目编号为xm[]数组地址加一。
并且定义了字符型变量x、c,用while判断是否继续输入。
defen()
定义chengji[n](n为参加学校数目)数组,首先将所有得分初始化,然后按照学校编号依次将某一项目的成绩放入数组中,并且将这个成绩从数组开始依次比较大小,如果要放入的成绩比以放入的成绩大,则从这个位置以后(包括这个成绩),所有的数据都往后移动一个位置,然后将要放入的成绩放在空出来的地址中。这样完成从大到小的排序,之后通过查找成绩,与数组中成绩相同时,赋值这个学校本项目的名次与得分。
通过for循环算出男子项目得分、女子项目得分、总得分。
paixu()
这个函数首先是各种排序界面,男子项目得分排名、女子项目得分排名、总得分排名。通过switch语句选择要排序的种类,首先定义ra[]、rb[]数组,与defen()中成绩排序相同,将学校得分按照大小放入ra[]数组中,不同的是这里需要同时存放学校的编号,在存放或移动ra[]数组中的成绩的同时,也要将这个学校的编号同时存放或移动。然后输出ra[]、rb[]中的数据即可。
chazhao()
查找界面包括按照学校编号查找、按照项目编号查找、查找运动员成绩。学校编号查找时输入的编号加一即为学校地址,输出学校信息即可,项目查找同学校查找,姓名查找用strcmp判断输入的字符与名字是否相符,然后输出信息。
read()与write()
读入与读出函数,在“运动会成绩单.txt”中读取数据与保存数据。(只有成绩数据)
caidan()
主菜单函数,通过switch语句选择要实现的函数功能
Switch语句case 2,查看运动会信息,同时询问是否修改运动会信息
三、程序设计:
结构图:
主函数:
源代码:
#includestdio.h
#includestdlib.h
#include
您可能关注的文档
最近下载
- 柑橘基地质量管理体系.pdf
- CAD2007入门教程_图文版.ppt VIP
- TSG Z7005—2015 特种设备无损检测机构 核准规则_可搜索.pdf VIP
- DB4419_T 24-2024 社区社会组织孵化服务指南.docx VIP
- 安全可靠分布式事务型数据库技术要求.pdf VIP
- SH3124-2001T 石油化工给水排水工艺流程设计图例.pdf VIP
- 电缆敷设图集 12D101-5.pdf VIP
- 《银行业法律法规与综合能力》课件.pptx VIP
- 2024新信息科技四年级《第二单元 用编码描绘世界》大单元整体教学设计.docx
- 淮北矿业2015年矿瓦斯综合治理“六项指标”考核办法淮北矿业2015年矿井瓦斯综合治理“六项指标”考核办法.doc VIP
文档评论(0)