本科毕业论文运动会分数统计

上传人:cl****1 文档编号:467108790 上传时间:2023-08-22 格式:DOC 页数:25 大小:140KB
返回 下载 相关 举报
本科毕业论文运动会分数统计_第1页
第1页 / 共25页
本科毕业论文运动会分数统计_第2页
第2页 / 共25页
本科毕业论文运动会分数统计_第3页
第3页 / 共25页
本科毕业论文运动会分数统计_第4页
第4页 / 共25页
本科毕业论文运动会分数统计_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《本科毕业论文运动会分数统计》由会员分享,可在线阅读,更多相关《本科毕业论文运动会分数统计(25页珍藏版)》请在金锄头文库上搜索。

1、 . . . 软 件 学 院课程设计报告书课程名称 数据结构 设计题目 运动会分数统计 目 录1 设计时间.12 设计目的.13设计任务.14 设计容 .1 4.1需求分析 .1 4.2总体设计.3 4.3详细设计.4 4.4测试与分析.84.4.1测试.94.4.2分析.94.5 附录.95 总结与展望.22参考文献.24 / 1 设计时间 2012.1.2-2012.1.82 设计目的学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。3设计任务 参加运动会有n个学校,学校编号为1n。比赛分成m个男子项目,和w个女子项目。项目编号为男子

2、1m,女子m+1m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由学生自己设定。m=20,n=20产生各院系的成绩单,容包括各院系取得的每项成绩的项目号、名次成绩、和得分;产生团体总分报表,容包括院系编号、男子团体总分、女子团体总分和团体总分。4 设计容 4.1需求分析为了简便地对运动会的报名、成绩的录入和统计,设计开发了本系统,以解决需求。当然,本系统只是一个较为简单的系统,仍然存在着一些问题,将在以后的学习中进行完善。 功能:1可以输入各个项目的前三名或前五名的成绩;2能统计各学校总分,3可以按学校编

3、号或名称、学校总分、男女团体总分排序输出;4可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。输出形式:有中文提示,各学校分数为整形界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。测试数据:要求使用:1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。4.2总体设计根据运动会分数统计系统问题的分析和设计要求,可以将该系统可以分为三个模块:信息统计模块、信息输出模块、信息查询模块,其系统功能结构图如图1所示。1信息

4、统计模实现信息的输入、统计、存档。2信息输出模块,实现信息的输出。3信息查询实现信息的查询。运动会分数统计系统信息查询模块信息输出模块信息统计模块 信息存档 信息输入 分数统计 函数功能表函数功能void inputinformation输入和统计信息函数void output输出信息函数void inquiry查询信息函数void writedata数据存储函数void readdata读入数据函数4.3详细设计1定义运动项目数据类型,用于存放运动项目,包括项目编号、项目所取名次数、名次、分数。/定义项目结点的类型typedef struct int itemnum; /项目编号 int t

5、op; /项目取名次的数目,由用户定义3或5 int range5; /名次 int mark5; /分数itemnode;2定义学校数据类型,用来存储参赛学校信息,包括学校编号、学校总分、男团总分、女团总分、项目数组。/定义学校结点类型typedef structint schoolnum; /学校编号 int score; /学校总分 int mscore; /男团体总分 int wscore; /女团体总分 itemnode cm+w; /项目数组schoolnode;(3) 定义学校数组schoolnode hn。采用数组结构有利于随机的存储和查询。定义全局标志变量int flag1、

6、flag2,分别用以标志是否已经向系统输入了信息和标志系统中是否已经存在信息。定义文件指针FILE * report,用来指向存档的文件。功能模块: 1信息输入及分数统计功能void inputinformation为输入信息及分数统计函数。在输入信息的同时进行分数的统计。可以输入各个学校各项目前三名或前五名的成绩。在输入学校的参赛项目时,结果取前三名还是前五名自己定,用一个选择语句实现。利用swith语句前三名的分数赋为5、3、2,前五名的成绩赋为7,5、3、2、1,未取得成绩则赋为0。并统计团体总分,男团总分和女团总分。其主要功能代码如下:fors=0;s printf; scanf; /

7、输入所获名次信息 if switch case 0: hi.cj.marks=0; break; case 1: hi.cj.marks=5; break; case 2: hi.cj.marks=3; break; case 3: hi.cj.marks=2; break; else switch case 0: hi.cj.marks=0; break; case 1: hi.cj.marks=7; break; case 2: hi.cj.marks=5; break; case 3: hi.cj.marks=3; break; case 4: hi.cj.marks=2; break;

8、 case 5: hi.cj.marks=1; break; hi.score=hi.score+hi.cj.marks;2信息输出功能void output为输出函数。列出一个输出目录利用swich语句使函数按学校编号输出或按学校总分、男团总分、女团总分由高到低排序输出。利用辅助数组remember和冒泡排序的方法使之按分数的由高到低输出。利用循环语句do while当输入2时返回输出目录,输入0是跳出循环返回主菜单。3信息查询功能void inquiry为查询函数。列车一个查询目录利用swich 语句使函数按学校编号或项目编号查询,输出某学校的某个项目的得分情况或某个项目的前几名的学校。再

9、利用循环语句do while当输入2是返回查询目录,输入0时跳出循环返回主菜单。5主函数void main是主函数。列出主菜单,利用switch语句调用以上函数实现各个菜单的功能。想在每次查询结束想返回主菜单进行其它项时,应在main函数中调用其它函数时再调用main函数,如:switch case 1: printf;inputinformation;writedata;printf;main; case 2: printf;ifreaddata;output;main;在进入主菜单后为了确保系统中已经输入了信息,用标志标量flag1和flag2来控制循环。如果系统中没有任何信息,用户就不能选择输入或查询操作,此时会输出提示信息,并返回主菜单。直到用户输入了信息或退出系统。其实现代码如下:do printf; printf; printf; printf; printf; printf; printf; printf*请选择要实现步骤的编号:nn; scanf; ifbreak; else ifflag1=0; else

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号