计算机设计大赛赛事统计

【问题描述】        

参加计算机设计大赛的n个学校编号为1~n,赛事分成m个项目,项目的编号为1~m.比赛获奖按照得分降序,取前三名,写一个统计程序产生各种成绩单和得分报表。

【基本要求】

1)每个比赛项目至少有10支参赛队;每个学校最多有6支队伍参赛;

2)能统计各学校的总分;

3)可以按照学校编号或名称查询,学校的总分、各项目的总分排序输出;

4)可以按学校编号查询学校某个项目的获奖情况;可以按项目编号查询取得前三名的学校;

5)数据存入文件并能随时查询

【设计要求】

1)输入数据形式和范围:可以输入学校的名称,赛事项目的名称。

2)输出形式:有中文提示,各学校分数为整数

3)界面要求:交互设计要合理,每个功能可以设立菜单,根据提示,完成相关功能的要求。

4)存储结构:学生自己根据系统功能要求自己设计,但是赛事相关数据要存储在文件中。

【测试数据】   要求使用全部合法数据,整体非法数据,局部非法数据。进行程序测试,以保证程序的稳定。

【实现提示】   假设3<赛事项目数量<=10,学校名称长度不超过20个字符。每个赛事结束时,将其编号、名称输入,并依次输入参赛学校编号、学校名称和成绩。

1、问题分析和任务定义、

        通过问题,可以建立项目类和学校类。

2、数据结构的选择和概要设计、

        Team类表示参赛队伍情况:参加的项目编号(int) 所在学校(string)获得成绩(int);

        用arraylist把项目类装到集合中,进行数据处理。               

3、逻辑设计、

        Team(String xiangmu, String xuexiao, int chengji) 
                排序时,对Team以及School通过Comparable接口,对成绩以及编号排序

                通过java中set和get方法,分别实现求前三名,学校各项目的总分

4、测试结果及其分析、
 

功能设计:
输入功能(管理员权限):输入赛事项目编号、名称,然后依次输入参赛学校编号、名称及成绩
存储功能:赛事相关数据存储在文件中。

排序功能:

学校按总分排序的排名情况
学校在各项目中按分数排序的排名情况
查询功能(用户权限):

按照学校编号或名称查询,输出该学校的总分和参加项目的分数情况
按照项目编号查询,输出前三名的学校的编号和名称
按照学校编号查询,然后按照项目编号查询,输出该学校该项目的获奖情况
限制条件:
3<赛事项目数量(m)<=10
学校名称不超过20个字符
输出形式有中文提示
分数均为整数
部分可能用到的函数:
Prim()函数初始化数据;                                                                       
sort()函数排序;                                                                                               
Sum() 函数求和并输出;                                                                         
Print1()函数对各项目排序输出;                                                                               
Acquire()函数查询学校;                                                                     
Print2()函数输出一二三等奖项;                                                     
main()主函数用于界面设计和各种函数调用。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值