1、游戏算法实践报告 目录 1 问题定义与描述 2 1.1 问题定义 2 1.2 问题描述 2 2 关键技术 2 3 数据的组织 2 3.1 数据类型定义 . 2 3.2 数据存储结构 . 4 4 总体设计 4 4.1 系统模块图 4 4.2 数组和链表的基本操作 . 5 5 详细设计 6 5.1 主函数流程图 . 6 5.2 输入各个项目成绩的函数流程图 . 7 5.3 比赛成绩排序输出函数流程图 . 8 6 测试结果及分析 9 6.1 主菜单窗口 . 9 6.2 输入各个项目成绩并存储文件 . 9 6.3 统计各学校总分 12 6.4 按学校编号排序输出 12 6.5 按学校总分排序输出 12
2、 6.6 按男团体总分排序输出 13 6.7 按女团体总分排序输出 14 6.8 按学校编号查询学校某个项目情况 14 6.9 按项目编号查询取得名次的学校 15 7 心得体会 . 15 附录:程序代码 . 16 2 1 1 问题定义与描述问题定义与描述 1.1 问题定义 运动会分数统计系统 1.2 问题描述 参加运动会有n个学校,学校编号为1n。比赛分成m个男子项目和w个女子项目。 项目编号为男子1m,女子m+1m+w。不同的项目取前前三名积分;前三名的积分分 别为:5、3、2(m、wbi-1.成员 开始 导入数据 g2-bi. 成 员 bi-1.成 员;i1 输出数据 结束 9 6 6 测
3、试结果及分析测试结果及分析 6.1 主菜单窗口 图 6.1 主菜单窗口 6.2 输入各个项目成绩并存储文件 请选择(08) :1 进入输入各个项目成绩并存储文件 图 6.21 进入输入各个项目成绩界面 输入男子项目总数 m:2 输入女子项目总数 w:2 输入参加运动会的学校总数 n: 3 10 图 6.22 输入项目和学校总数 输入 项目:1 请选择 1(1.前三名 2.前五名) 第 3 名:学校3 第 2 名:学校2 第 1 名:学校1 项目:2 请选择 1(1.前三名 2.前五名) 第 3 名:学校1 第 2 名:学校2 第 1 名:学校3 项目:3 请选择 1(1.前三名 2.前五名)
4、第 3 名:学校3 第 2 名:学校1 第 1 名:学校2 项目:4 请选择 1(1.前三名 2.前五名) 第 3 名:学校3 第 2 名:学校1 第 1 名:学校2 11 图 6.23 输入项目信息 输入 项目:0 返回到主菜单窗口 12 图 6.24 返回主界面 6.3 统计各学校总分 请选择(08) :2 进入统计各学校总分 图 6.3 统计各学校总分 6.4 按学校编号排序输出 请按任意键继续 0 返回到主菜单窗口 请选择(08) :3 按学校编号排序输出 图 6.4 按学校编号排序输出 6.5 按学校总分排序输出 请按任意键继续 0 返回到菜单主界面 请选择(08) :4 按学校总分
5、排序输出 13 图 6.5 按学校总分排序输出 6.6 按男团体总分排序输出 请按任意键继续 0 返回到菜单主界面 请选择(08) :5 按男团体总分排序输出 图 6.6 按男团体总分排序输出 14 6.7 按女团体总分排序输出 请按任意键继续 0 返回到菜单主界面 请选择(08) :6 按女团体总分排序输出 图 6.7 按女团体总分排序输出 6.8 按学校编号查询学校某个项目情况 请按任意键继续 0 返回到菜单主界面 请选择(08) :7 按学校编号查询学校某个项目情况 图 6.8 按学校编号查询学校某个项目情况 15 6.9 按项目编号查询取得名次的学校 请按任意键继续 0 返回到菜单主界
6、面 请选择(08) :8 按项目编号查询取得名次的学校 图 6.9 按项目编号查询取得名次的学校 7 7 心得体会心得体会 本次课程设计,不仅检验了我的实践能力,也让自己可以很明确的了解到自己哪些知 识点掌握的比较好,哪些知识点运用的还不够熟练。同时通过与组员和老师之间的交流, 学到了很多自己所不了解的知识,多问,多学,实践与团队合作,才是关键。 16 附录:程序代码附录:程序代码 #include #include #include #include #define MAX 50 typedef struct node1 int school; /*学校编号*/ int record; /*项目成绩*/ struct node1 *next; /*链域*/ Schools; typedef struct int item; /*项目编号*/ Schools *firsts