目录
参加计算机设计大赛的n个学校编号为1~n,赛事分成m个项目,项目的编号为1~m.比赛获奖按照得分降序,取前三名,写一个统计程序产生各种成绩单和得分报表。
基本要求
1)每个比赛项目至少有10支参赛队;每个学校最多有6支队伍参赛,每支队伍只能参加一个项目;
2)能统计各学校的总分;
3)可以按照学校编号或名称查询,学校的总分、各项目的总分排序输出;
4)可以按学校编号查询学校某个项目的获奖情况;可以按项目编号查询取得前三名的学校;
5)数据存入文件并能随时查询;
问题分析
题目要求我们能做到对赛事成绩进行管理,而且要能将查询到的数据存入文件。
逻辑设计
分别用几个函数实现那些功能。
物理设计
存储结构:
使用struct构建team,college,competitionproject等。
struct team {
int ID;//队伍id和名称
int joinproject;//该队伍参赛的项目
int joinprojectscores;
};
struct college
{
pair<int, string> idname;//学校的id和名称
team A[7];//每所学校6支参赛队伍
int totalscores;
int projectscores[6];
};
struct competitionproject{
pair<int, string>idname;//项目id和名称
};
执行结构图:
数据测试
要求使用全部合法数据,整体非法数据,局部非法数据。进行程序测试,以保证程序的稳定。