您好,欢迎访问三七文档
当前位置:首页 > 机械/制造/汽车 > 汽车理论 > 数据结构课程设计(运动会分数统计)
1目录:1.需求分析:.................................................................................................................................................2功能要求:...............................................................................................错误!未定义书签。性能需求:...............................................................................................................................22.概要设计:.................................................................................................................................................21.存储结构设计:....................................................................................错误!未定义书签。2.流程图设计:........................................................................................................................23.详细设计:.................................................................................................................................................74.菜单窗口:..................................................................................................................错误!未定义书签。1.主菜单窗口............................................................................................错误!未定义书签。2.输入各个项目成绩并存储文件..........................................................错误!未定义书签。3.统计各学校总分..................................................................................错误!未定义书签。4.按学校编号排序输出..........................................................................错误!未定义书签。5.按学校总分排序输出..........................................................................错误!未定义书签。6.按男团体总分排序输出......................................................................错误!未定义书签。7.按女团体总分排序输出......................................................................错误!未定义书签。8.按学校编号查询学校某个项目情况..................................................错误!未定义书签。9.按项目编号查询取得名次的学校......................................................错误!未定义书签。10退出......................................................................................................错误!未定义书签。5.课程设计总结与体会:...........................................................................................................................146.致谢:..........................................................................................................................错误!未定义书签。21.需求分析:1.运动会分数统计(难度***)任务:参加运动会有10个学校,学校编号为1……10。比赛分成18个男子项目,和12个女子项目。项目编号为男子1……18,女子19……30。不同的项目取前三名积分,前三名的积分分别为:5、3、2。功能要求:b)可以输入各个项目的前三名的成绩;c)能统计各学校总分;d)可以按学校编号或名称、学校总分、男女团体总分排序输出;e)数据存入文件并能随时查询f)规定:输入数据形式和范围:可以输入学校的名称,运动项目的名称输出形式:有中文提示,各学校分数为整型存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在java语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构;测试数据:测试数据及测试结果请在上交的资料中写明;性能需求:输出形式:有中文提示,各学校分数为整形界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。2.概要设计:1.流程图设计:Main()函数流程图3开始intt!g2||!g1exit(1);system(cls);选择操作编号1234567894School*p1和Items*p2!p1||!p2exit(1);YPrintf();w0||w20NYYYPrintf(“输入有误”)Printf(“输入有误”)Printf(“输入有误”)NNNY请选择1.前三名2.前五名!1&!2Printf(“输入有误请重新输入”)n0||n20m0||m20!1输入前三名学校名称输入前五名学校名称输入工程项目名称(如:1)0YYNNN结束开始Funct1()函数流程图5开始intk;k=g2-n;printf(%d\t\t\t,k,g2-b[k].score);k++Printf(“\n”);结束开始inti=2,j,k;i=g2-nprintf(%d\t,k);system(pause);结束YNmultiplexi++k=1k=g2-nprintf(%d\t\t%d\n,g2-b[k].school,g2-b[k].score);k++NY开始inti=2,j,k;i=g2-nprintf(%d\t,k);system(pause);结束YNmultiplexi++k=1k=g2-nprintf(%d\t\t%d\n,g2-b[k].school,g2-b[k].score);k++NYSave()函数流程图Funct2()函数流程图funct3()函数流程图funct4()函数流程图6开始inti=2,j,k;i=g2-nprintf(%d\t,k);system(pause);结束YNmultiplexi++k=1k=g2-nprintf(%d\t\t%d\n,g2-b[k].school,g2-b[k].boys);k++NY开始inti=2,j,k;i=g2-nprintf(%d\t,k);system(pause);结束YNmultiplexi++k=1k=g2-nprintf(%d\t\t%d\n,g2-b[k].school,g2-b[k].girls);k++NY开始inti=2,j,k;P2!=NULL;结束YNP2=Item==jprintf(学校编号:%d\t项目%d:得%d分\n,i,p2-item,p2-record);p2=p2-next;printf(\n);YN开始intiP2!=NULL;结束Nprintf(\n);printf(学校%d:得%d分,p1-school,p1-record);YFunct5()函数流程图Funct6()函数流程图funct7()函数流程图funct8()函数流程图73.详细设计:#includestdio.h#includemath.h#includeconio.h#includestdlib.h#includeprocess.h#definen2//学校数目#definem1//男子项目数目#definew1//女子项目数目#definenull0typedefstruct{intitemnum;//项目编号inttop;//取名次的数目intrange[3];//名次intmark[3];//分数}itemnode;//定义项目结点的类型typedefstruct{intschoolnum;//学校编号intscore;//学校总分intmscore;//男团体总分intwscore;//女团体总分itemnodec[m+w];//项目数组}headnode;//定义头结点类型headnodeh[n];//定义一个头结点数组voidinputinformation()//输入信息,建立系统{inti,j,k,s;for(i=0;in;i++){h[i].score=0;h[i].mscore=0;h[i].wscore=0;}//初始化头结点for(i=0;in;i++){printf(*****学校编号:);scanf(%d,&h[i].schoolnum);//输入头结点信息8for(j=0;jm+w;j++){printf(*****项目编号:);scanf(%d,&h[i].c[j].itemnum);printf(*****取前3名\n);//scanf(%d,&h[i].c[j].top);printf(*****获得几个名次:);scanf(%d,&k);//输入项目信息for(s=0;s3;s++)h[i].c[j].range[s]=0,h[i].c[j].mark[s]=0;//初始化排名和分数for(s=0;sk;s++){printf(*****名次:);scanf(%d,&h[i].c[j].range[s]);//输入所获名次信息if(h[i].c[j].top==3)switch(h[i].c[j].range[s]){case0:h[i].c[j].mark[s]=0;break;case1:h[i].c[j].mark[s]=5;break;case2:h[i].c[j].mark[s]=3;break;case3:h[i].c[j].mark[s]=2;break;}h[i].score=h[i].
本文标题:数据结构课程设计(运动会分数统计)
链接地址:https://www.777doc.com/doc-3800158 .html