数据结构课程设计题1——中国计算机设计大赛赛事统计(预习报告)

目录

  • 一、问题概述
    • 1. 问题描述
    • 2. 基本要求
    • 3. 设计要求
    • 4. 测试数据
    • 5. 实现提示
  • 二、问题分析和任务定义
    • 1. 问题分析
    • 2. 任务定义
  • 三、系统设计
    • 1.数据类型
    • 2.功能模块
    • 3.系统设计
      • (1) Main类
      • (2) competitionSystem类
      • (3) School类
      • (4) Team类
  • 四、编程语言
  • 五、开发平台/工具
  • 六、部分代码

一、问题概述

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个字符。每个赛事结束时,将其编号、名称输入,并依次输入参赛学校编号、学校名称和成绩。

二、问题分析和任务定义

1. 问题分析

1) 用于管理中国计算机设计大赛赛事相关信息的统计
2) 能够根据用户需求,输出相关的信息
3)数据存入文件并可随时查询,不会因为每一次项目的关闭而重新输入数据

2. 任务定义

1) 确定系统相关数据所采用的数据类型
2)确定系统所采用的数据结构
3) 确定系统的主要功能模块
4)实现各个功能模块

三、系统设计

1.数据类型

成员变量 变量意义
m 竞赛项目总数
n 参赛学校的总数
itemCode 项目编号
itemName 项目名称
teamNum 参赛队伍数量
schoolCode 学校编号
schoolName 学校名称

2.功能模块

  1. 信息输入:用来输入竞赛的相关信息,当输入信息有误时提示。
  2. 数据的处理:主要操作为对竞赛成绩进行排序,如对每个学校的各项目总分排序、对指定项目的所有参赛队伍成绩排序、获得前三名的信息等。
  3. 信息输出:根据用户需求输出指定数据,例如用户输入学校编号可得到对应获奖情况、根据所选项目输出前三名的信息。
  4. 数据存储:每次完成输出后对当前数据进行保存,在下次打开项目时进行读取。

3.系统设计

(1) Main类

	控制程序的启动,以及完成存储和读取数据的过程

(2) competitionSystem类

	实现程序的主体功能

(3) School类

	存储学校相关信息,并管理对应学校的队伍信息

(4) Team类

	存储队伍信息

四、编程语言

JAVA

五、开发平台/工具

IntelliJ IDEA

六、部分代码

	static class Item {
        //项目编码
        int itemCode;
        //项目名称
        String itemName;
     	//参赛队伍数量
        int teamNum;
        //参赛队伍编号
        int[] jointeam = new int[10];
        //参赛队伍成绩
        int[] score = new int[10];
    }
    
    static class School {
        //学校编码
        int schoolCode;
 		//学校名称
        String schoolName;
 		//项目总分
        int scoreSum;
    }

你可能感兴趣的:(java)