1.问题描述
参加计算机设计大赛的n个学校编号为1~n,赛事分成m个项目,项目的编号为1~m.比赛获奖按照得分降序,取前三名,写一个统计程序产生各种成绩单和得分报表。
2.基本要求
1)每个比赛项目至少有10支参赛队;每个学校最多有6支队伍参赛;
2)能统计各学校的总分;
3)可以按照学校编号或名称,学校的总分、各项目的总分排序输出;
4)可以按学校编号查询学校某个项目的获奖情况;可以按项目编号查询取得前三名的学校;
5)数据存入文件并能随时查询
3.设计要求
1)输入数据形式和范围:可以输入学校的名称,赛事项目的名称。
2)输出形式:有中文提示,各学校分数为整数
3)界面要求:交互设计要合理,每个功能可以设立菜单,根据提示,可以完成相关功能的要求。
4)存储结构:学生自己根据系统功能要求自己设计,但是赛事相关数据要存储在文件中。
4.测试数据
要求使用全部合法数据,整体非法数据,局部非法数据。进行程序测试,以保证程序的稳定。
5.实现提示
假设3<赛事项目数量<=10,学校名称长度不超过20个字符。每个赛事结束时,将其编号、名称输入,并依次输入参赛学校编号、学校名称和成绩。
6.初步思考
5.16从交互性来看,为了更好的参与感,我首先编写了一个菜单栏,使用者可以通过键入选择想要进行的操作。一开始本来想要使用列表和数组来写,但是貌似有些不兼容,并且二者对应起来十分的麻烦,我的朋友向我推荐了C++里面的结构体,但是对我而言还是Java更加的熟悉,奈何Java的结构体不是很了解,故先搁置。
5.17我慢慢的搞清楚了一些Java的结构体的用法,值得注意的是使用的时候要创建对象。然后就有一个新的问题出现,那就是应该怎么定义?或者说定义几个结构体。如果我以项目为基本单位,以"项目编号,项目名称,参加项目的学校的编号,参加项目学校的名称,该学校取得的分数"这样写,那么单项目总分和学校排名以及取前三名将会变得非常简单,但是这样的话我就需要思考的是学校总分如何去计算。