运动会分数统计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

运动会分数统计

【问题描述】

参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w个女子项目。

项目编号为男子1……m,女子m+1……m+w。不同的项目取前五名或前三名积分;

取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;

哪些取前五名或前三名由学生自己设定。(m<=20,n<=20)

【任务要求】

功能要求:

1).可以输入各个项目的前三名或前五名的成绩;

2).能统计各学校总分,

3).可以按学校编号、学校总分、男女团体总分排序输出;

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

规定:输入数据形式和范围:20以内的整数(如果做得更好可以输入学校的名称,运动项目的名称)

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

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

存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。

(数据文件的数据读写方法等相关内容在c语言程序设计的书上,请自学解决)

请在最后的上交资料中指明你用到的存储结构;

测试数据:要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。

进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明;【测试数据】

自行设定,注意边界等特殊情况。

*/

目录

一、需求分析 (3)

二、概要设计 (1)

三、详细设计 (3)

四、程序调试与实现 (7)

五、用户使用说明.....................................................................错误!未定义书签。

六、附录.....................................................................................错误!未定义书签。

一、需求分析

(一)问题分析

该系统所应包含的信息为:学校编号、学校名称、运动项目编号、运动项目名称、学校总分、男团总分和女团总分等。

(二)系统功能分析

1.根据基本数据输入相关的信息

2.根据要求输出所需信息

3.查找所需信息

4.结束运行

二、概要设计

根据运动会分数统计系统问题的分析和设计要求,可以将该系统分为四大模块:输入信息模块、输入信息模块、查询信息模块和退出系统模块

(1)输入信息模块实现信息的输入和存档

(2)输出信息是根据要求实现相关信息的排序输出

(3)查询信息根据要求查询信息

(4)退出系统结束系统

运动会分数统计系统

三、详细设计

(一)主控模块设计{ main ();}

case1 case2 case3 case4

default

(二)输出信息模块设计{ design1( );}

选择操作 查询信息 退出系统

输入信息

输出信息 输入有误 学校编号

学校名称

项目编号

开始

输入

Yes No

yes

项目名称

名次 是否循环 统计总分

是否循环

结束

数据存入文件

(三)输出信息模块设计{ design2( );}

Yes

开始

按学校总分排序

按学校编号排序 排序

按男团总分排序

按女团总分排序

选择

输出 结束 是否继续

(四)查询模块{ design3();}

Yes

Yes

No No

开始

按学校编号查询 选择 输出 结束 是否继续 是否继续

四、程序调试与实现

1、全部合法数据

2、整体非法数据

3、局部非法数据

五、用户使用说明

1. 首先,请根据要求输入所需数据。

2. 系统自动设置学校个数:3个;男子项目:2个;女子项目:1个。如果需

要更改其个数,只需将#define n 3(学校数目)、#define m 2(男子项目数目)、#define w 1(女子项目数目)中的个数进行更改,即可解决问题。

3.输入的数据存入名叫num.txt的文档中,如有需要可以查询。

六、附录

源代码

#include

#include

#include

#include

#define n 3//学校数目

#define m 2//男子项目数目

#define w 1//女子项目数目

#define null 0

void design1();

void design2();

void design3();

int choice,sign;

typedef struct

{

int itemnum; //项目编号

char name;//项目名称

int top; //取名次的数目

int range[5]; //名次

int mark[5]; //分数

}itemnode; //定义项目结点的类型

typedef struct

{

int schoolnum; //学校编号

char schoolname[20];//学校名字

int score; //学校总分

int mscore; //男团体总分

int wscore; //女团体总分

itemnode c[m+w]; //项目数组

}headnode ;//定义头结点类型

headnode h[n];//定义一个头结点数组

void main() //主函数

{

printf("============欢迎使用运动会分数统计系统===========\n");

printf("***************** 1.输入信息*********************\n");

printf("***************** 2.输出信息*********************\n");

printf("***************** 3.查询信息*********************\n");

printf("***************** 4.退出系统*********************\n");

printf("=================================================\n");

printf("\n");

相关文档
最新文档