欢迎来到天天文库
浏览记录
ID:6332914
大小:494.50 KB
页数:20页
时间:2018-01-10
《《数据结构》课程设计报告-运动会分数统计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、数据结构课程设计报告设计题目:运动会分数统计19题目:运动会分数统计一、问题描述参加运动会有n个学校,学校编号为1……n.比赛分成m个男子项目和w个女子项目。项目编号为男子1......m,女子m+1......m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。(m<=20,n<=20)二、基本要求1).可以输入各个项目的前三名或前五名的成绩;2).能统计各学校总分;3).可以按学校编号、学校总分、男女团体总分排序输出;4).可以按学校编号查询学校某个项目的情况;可以按项目编号查
2、询取得前三或前五名的学校。5).界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。6).存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。三、算法思想本课设要求输入信息,统计分数,执行排序与查找功能,在要求中没有在建立数据之后进行插入和删除操作,而在排序和查找过程中有许多的随机读取数据操作,因此使用顺序结构而不用链表。由于各个要求属性具有一定的联系,在定义数据时使用结构体和结构体数组来存储信息数据。考虑到程序的要求在设计函数时将学校个数和项目个数设计为可变的数据,为方便使用设计菜单函数(menu),而由于要求将
3、信息存储在文件中故设计文件的存储(savetofile)与读取函数(readfromfile),信息输入函数(input)在输入基本信息后由系统统计总分的内容并全部存入文件file中,在接下来的函数中开始都需要读取文件中的信息,信息的输出(output)输出输入函数中统计后的各项信息,在排序输出(sortput)中使用冒泡排序法进行不同关键字的排序,查询函数(search)采用顺序表的查找来完成。四、数据结构(1)项目数据表:运动会系统先制定本次运动会所需的参赛项目。本数据表根据要求设计存储每个项目的编号、要取的名次、各个名次名称及各名次对应的分数。用于对以后项目情况的统计已及
4、查询。其中inum,top,range由输入信息输入,而mark有range和top决定。typedefstruct19{intinum;/*项目编号*/inttop;/*取名次的数目*/intrange[5];/*名次*/intmark[5];/*分数*/}itemnode;/*存放项目信息*/(1)学校数据表:本数据表根据要求储存了各个参赛学校的总体情况,包括学校的编号、学校总分、男子团体总分、女子团体总分,并且包括项目数据数组t[n]。其中snum和t[n]中部分数据由输入信息输入,而其他三项内容score,mscore,wscore将由系统进行自动统计。typedefs
5、truct{intsnum;/*学校编号*/intscore;/*学校总分*/intmscore;/*男团体总分*/intwscore;/*女团体总分*/itemnodet[m0+w0];/*项目数组*/}snode;/*存放学校信息*/snodea[n0];/*定义一个学校数组*/这二个数据表相关联接,a[n]中包括t[n],形成一个整体。五、模块划分1、Voidmenu(intn,intm,intw)功能是提供界面窗口2、Voidsavetofile()功能是保存输入的运动会信息到file文件3、Voidreadfromfile()功能是从file文件中读取运动会信息4、V
6、oidinput(intn,intm,intw)功能是输入信息并统计5、Voidoutput(intn,intm,intw)功能是按学校、项目输出统计信息6、Voidsortput(intn,intm,intw)功能是按四种方法排序并输出结果7、Voidsearch(intn,intm,intw)功能是按两种方法查询并输出结果六、源程序#include#include#include#definen020/*学校最大数目*/#definem020/*男子项目最大数目*/#definew020/*女子项目最大数目*/type
7、defstruct19{intinum;/*项目编号*/inttop;/*取名次的数目*/intrange[5];/*名次*/intmark[5];/*分数*/}itemnode;/*存放项目信息*/typedefstruct{intsnum;/*学校编号*/intscore;/*学校总分*/intmscore;/*男团体总分*/intwscore;/*女团体总分*/itemnodet[m0+w0];/*项目数组*/}snode;/*存放学校信息*/snodea[n0];/*定义一个学校数组
此文档下载收益归作者所有