当前位置:文档之家› 运动会分数统计系统的简单实现

运动会分数统计系统的简单实现

运动会分数统计系统的简单实现
运动会分数统计系统的简单实现

鲁东大学数学与信息学院2010-2011学年第1学期《数据结构专题设计》课程论文

课程号:2102791

任课教师陈军成绩

教师签字:

年11 月

运动会分数统计系统的简单实现

1、引言

每个学校都有运动会的举办,而运动会最重要的就是对于分数的统计,对于运动会来说,不同名次的不同积分,每个项目的分数累计,每个学校(或班级)获奖的情况,每个学校(或班级)总分的状况,数据的整理非常麻烦和琐碎,如果是场大型的运动会,数据的处理量是很大的,仅靠人工处理时往往不够的。所以一个可以简单统计分析运动会分数的分数管理系统是很重要的,它可以为用户提供的服务有:(1)数据的输入。

(2)数据的统计,包括分类,统计各项积分,总分等。

(3)数据的排序。

(4)有关数据的输出,查询。

简单的分数统计系统可以简化人工操作,使数据处理的更为简便和快捷,省去大量冗余时间和人工劳力。

运动会分数统计系统处理的数据相对简单,数据量相对较小,操作简单,但所用结构丰富,可以用来作为练习C语言的编程。

利用C语言实现对数据的整理,包括输入、储存、编辑、简单的运算和数据的查找。

2、需求分析

本次设计任务是统计运动会分数,即总分、女子总分、男子总分。

输入各个学校的名称,各个项目的名称,获得每个项目前三名的学校编号,分数按第一名3分、第二名2分、第三名1分的积分计算成绩。

最后输出各学校的总分、女子总分、男子总分,及总分排名、女子总分排名、男子总分排名,和所要查找的学校总分、女子总分、男子总分。

◆任务:一共有n个学校参加运动会(n小于20),编号1……n,分成m个男子项目和w个女子项目,不同项目取前三名的积分为:3、2、1(m<20,n<20)。

◆功能要求:

1.能统计各个学校的总分。

2.可以按学校总分、男子总分、女子总分输出。

3.可以查找某个学校的总分、男子总分、女子总分的情况。

3、概要设计(或总体设计)

3.1数据结构描述

实现以上算法必须定义两个结构体,一个项目结构体,一个学校结构体。

truct pro{ //项目结构体;

char name[N]; //项目名称;

int nums[4]; //前三名学校编号;

}p[21];

struct school{ //学校结构体;

int num;

char name[N]; //学校名称;

int sums; //学校总分;

int girl; //女子总分;

int boy; //男子总分;

}sch[21];

主要有五个模块:

1.主函数模块;选择操作。即选择要实现的功能。

2.总分排序模块;Sumsrank(),将参加运动会的学校按总分大小排列。

3.女子总分排序模块;Girlrank()将参加运动会的学校按女子总分大小排列。

4.男子总分排序模块;Boyrank()将参加运动会的学校按男子总分大小排列。

5.查找模块;Search()查找某学校的分数情况。

ADT定义

ADT Yundong{

数据对象:D={e1,e2,e3,e4 | e1,e2,e3,e4∈ElemSet}

基本操作:

Input(&A,x1,x2,x3….)

促使条件:A为n维数组,x1,x2,x3…为变量。

操作结果:将变量赋值给A中元素。

Rank(&A)

操作结果:将数组A中元素排序并列出。

}ADT Yundong 3.2模块设计

◆储存设计

◆主函数流程main() 4、详细设计及实现4.1 input()

4.2 sumsrank() 4.3 girlrank()

4.4 boyrank() 4.5 search()

5、调试分析

1.input() 输入函数

输入函数中出现的主要错误有错误信息的循环编写的不是很好,经常出现死循环,有时易跳不出循环总在重复同一操作。while 循环中的控制语句中的变量值在循环中的位置设置的不对以致在后面循环的时候出现无法实现循环,和循环出错,形成死循环的现象。例如控制语句中的y 变量就出现了错误,混淆了退出循环是的值。 为了将提示信息写进循环,可以将操作重复,所以出现了,报错不正确的现象。if 语句中的判断语句出现错误,逻辑关系不清等错误也常常出现。例如混淆了“&&”和“||”的用法,导致了判断错误输入时出现了很多错误。

出现这种情况后的解决办法,通过反复的修改和调试。换用不同的循环体找寻适合的控制语句。实现在输入错误时,出现错误提醒及修改操作。对于逻辑关系的换乱,可以试着用不同的判断语句来实现,或者不断试验判断正确逻辑。

在C++环境中单击程序运行按钮。

测试:屏幕显示菜单,输入1,回车。

输入各个学校的名称和各个项目的名称及前三名的学校。

2.排序函数

在排序函数中,程序使用了冒泡排序法。但是中间出现了对结构体中的元素的不正确引用。致使后面输出时的编号和排名时的数据错误。在排序中if 语句判断好大小后,最开始只是对当前的元素进行了排序,以致后面再输出结果时,输出错误,排序混乱。例如在总分排序中,只是将sch[j].sum与sch[j+1].sum进行了交换,致使后面排序的输出时完全错误。

解决方法,仔细查找结构体。正确引用结构体元素。排序时应将结构体整体排序,而不是简单的将某个结构体中的某个元素排序。

排序中还出现了循环错误。对于双层循环的控制出现错误,外层循环和内层循环没有很好的协调。例如外层循环循环变量为i,内层循环循环变量为j,i与j的关系没有弄清,使后面的结果发生了错误。

解决方式,修改循环。检查外层循环和内层循环的控制语句,调试出最佳的循环关系。发现错误并修改。

测试:输入2或3,回车。

按学校的最初编号排列,输出学校名称、团体总分、女子总分、男子总分。

按学校的团体总分排列,输出学校编号,学校名称、团体总分。

调试分析:缺点是每次执行后无法返回主菜单,查找功能每次只能查找一个学校,不能循环使用。每次查找一个学校后就退出循环,不能继续操作。

6、结论及体会

1.课题小结:

对于这次的实验题目,事先想象的很简单,自己认为只是几个简单的小模块,简单的排序和数据统计问题,想要实现是很简单的事情。可是没有想到做起来还是蛮辛苦的,有好多模块之间的联系自己事先都没有想清楚,导致做的时候很是手忙脚乱。事先所查的资料也是寥寥无几,能给自己提供的信息也很少。在编程序的时候遇到了很多困难,从而也发现了自己对之前C语言及数据结构的知识掌握的不是很理想。简单的做题还是可以,但是如果结合起来做一个简单的系统还真是困难。自己对于各个算法之间的联系还是模棱两可的,很多东西不是自己想象的那样简单。明白了,要想把一个系统做好需要了解很多东西,也要有全局的观念,自己做的是一个系统而不是一个简单的算法。仅仅了解书本上简单的程序是不够的,还要将这些只是用到实际的程序上,这一点中遇到的困难是我始料未及的。

通过这次设计实验,让我对原来所学的知识有了更深刻的理解,尤其是原来并不是很懂得结构体知识,还有对于数据排序的知识。在写论文的时候也对于数据的流程图有了新的认识,原来学习的时候不是很喜欢画流程图,但是通过这次试验,让我发现流程图的重要性。

这次实验让我学到了很多,不仅仅是知识,还有查找资料,编写程序、调试程序等能力,同时也让我明白了,只要决定做一件事,下定决心通过努力是可以成功的,虽然可能和自己的想象有些差距,但是如果不去做是连一点点的收获都得不到的,我们可以通过以后的努力使它更加完善和理想。这也是我这次试验的最大收获,这次试验让我获益匪浅。

2.对系统的评价及改进设想

我的系统自认为不是很理想的,因为自己有很多的想法没有被实现。时间复杂度和空间复杂度没很好的被考虑在内。所以算法的分析做的不是很够,自己只是将简单的计算思想和简单的程序功能体现出来。

虽然程序上还有很多的地方不足,但是简单的功能,如分数输入、数据整理、数据排序、数据输出等功能都可以实现,基本的要求和功能都已实现,这是我比较满意的。还有让自己觉得程序还不错的地方是错误提示做的比较满意,在反复修改了程序循环之后可以正确的提示错误,并且可以退出循环重新输入。

我认为这个系统还有很多需要改进的地方,有些功能没有完全的体现。原本我对于这个程序的设想是,除了数据的输入、整理、排序之外,查找功能是除了可以按学校查询,还可以按项目查询各学校的得分情况,但是这一点我的程序无法实现,还是因为结构体的运用上有些不清,无法达到这项功能。这是我对于这个程序最大的遗憾。也是最需要改进的地方。

因为自己的编程能力真的不是很好,很多地方无法顾及,许多的东西无法实现,程序有很多的瑕疵和不足。所以希望在老师看过我的程序后,请老师多多批评指正,谢谢老师!!

参考文献

[1] 严蔚敏,吴伟民.数据结构题集(C语言版).北京:清华大学出版社,1999.

[2] 徐孝凯. 数据结构课程实验. 北京:清华大学出版社,2002.

附录

主要的源程序代码。

#include

#include

#include

#include

#include

#define OK 1

#define ERROR 0

#define N 20

int n; //n个学校;

int m; //m个男子项目;

int w; //w个女子项目;

struct pro{ //项目结构体;

char name[N]; //项目名称;

int nums[4]; //前三名学校编号;

}p[21];

struct school{ //学校结构体;

int num;

char name[N]; //学校名称;

int sums; //学校总分;

int girl; //女子总分;

int boy; //男子总分;

}sch[21];

int mins[3]={3,2,1}; //前三名成绩的积分;

void input()

{ //输入各项目成绩;

int i,j,x,y;

printf("请输入学校的数目。(大于0,小于20)!");

y=0;

while(1)

{

scanf("%d",&n);

if(n>=0 && n<=20) y=1;

if(y==1) break;

else printf("输入有误,输入应大于零小于20,请重新输入!"); }

for(i=1;i<=n;i++) {

printf("请输入第%d个学校的名字。",i);

scanf("%s",sch[i].name);

sch[i].sums=0;

sch[i].boy =0;

sch[i].girl=0;

sch[i].num=i;

}

printf("请输入男子和女子项目数(大于0,小于20):");

y=0;

while(1)

{

scanf("%d %d",&m,&w);

if(m<=20&&m>=1&&w<=20&&w>=1) y=1;

if(y==1) break;

else printf("输入有误,输入应大于零小于20,请重新输入!");

}

for(i=1;i<=m+w;i++)

{

printf("请输入第%d个项目的名称:\n",i);

scanf("%s",p[i].name);

printf("请输入该项目前三名学校的编号(数字编号):\n");

for(j=1;j<=3;j++)

{

y=0;

while(1)

{

scanf("%d",&x);

if(x>=1 && x<=20) y=1;

if(y==1) break;

else printf("输入数据有误,请重新输入:");

}

p[i].nums[j]=x;

sch[x].sums+=mins[j-1];

if(i<=m)sch[x].boy+=mins[j-1];

else sch[x].girl+=mins[j-1];

}

}

}

void sumsrank()

{ //总分排序;

int i,j;

school a;

for(i=0;i

{

for(j=1;j<=n-i;j++)

{

if(sch[j].sums

{

a=sch[j];

sch[j]=sch[j+1];

sch[j+1]=a;

}

}

}

}

void girlrank()

{ //女子排序;

int i,j;

school a;

for(i=0;i

{

for(j=1;j<=n-i;j++)

{

if(sch[j].girl

{

a=sch[j];

sch[j]=sch[j+1];

sch[j+1]=a;

}

}

}

}

void boyrank()

{ //男子排序

int i,j;

school a;

for(i=0;i

{

for(j=1;j<=n;j++){

if(sch[j].boy

{

a=sch[j];

sch[j]=sch[j+1];

sch[j+1]=a;

}

}

}

}

void schrank()

{ //学校排名

int i;

printf(" 学校分数统计\n");

printf("\n");

printf("学校编号学校名称团体总分女子总分男子总分\n");

for(i=1;i<=n;i++)

printf(" %d %s %d %d

%d \n",sch[i].num,sch[i].name,sch[i].sums,sch[i].girl,sch[i].boy);

printf("\n");

printf("\n");

}

void Sumrank()

{ //团体分数排名

int i;

printf(" 团体分排名\n");

sumsrank();

printf("名次学校编号学校名称团体总分\n");

for(i=1;i<=n;i++)

{

printf(" %d %d %s %d \n",i,sch[i].num,sch[i].name,sch[i].sums);

}

printf("\n");

printf("\n");

}

void Girlrank(){

int i;

printf(" 女子总分排名\n"); //女子总分排名

girlrank();

printf("名次学校编号学校名称女子总分\n");

for(i=1;i<=n;i++)

{

printf(" %d %d %s %d \n",i,sch[i].num,sch[i].name,sch[i].girl);

}

printf("\n");

printf("\n");

}

void Boyrank(){

int i;

printf(" 男子总分排名\n"); //男子总分排名

boyrank();

printf("名次学校编号学校名称男子总分\n");

for(i=1;i<=n;i++)

{

printf(" %d %d %s %d \n",i,sch[i].num,sch[i].name,sch[i].boy);

}

printf("\n");

printf("\n");

}

void search(){//查找功能

int x;

printf("请输入要查询的学校编号:"); //学校查找

scanf("%d",&x);

printf("学校编号学校名称团体总分女子总分男子总分\n");

printf(" %d %s %d %d %d",s ch[x].num,sch[x].name,sch[x].sums,sch[x].girl,sch[x].boy);

printf("\n");

}

void main()

{

int x;

printf("*************************************\n");

printf(" 运动会分数统计系统\n");

printf("*************************************\n");

printf("\n");

printf(" 1.输入成绩;\n");

printf(" 2.学校排名;\n");

printf(" 3.总分排名;\n");

printf(" 4.女子排名;\n"); printf(" 5.男子排名;\n"); printf(" 6.学校查找;\n"); printf(" 0.退出系统;\n"); printf(" 请选择操作:\n"); printf("\n");

printf("\n");

scanf("%d",&x);

switch(x)

{

case 0:break;

case 1:{input();

printf("请继续选择操作!");

scanf("%d",&x);

}

case 2:{schrank();

printf("请继续选择操作!");

scanf("%d",&x);

}

case 3:{Sumrank();

printf("请继续选择操作!");

scanf("%d",&x);

}

case 4:{Girlrank();

printf("请继续选择操作!");

scanf("%d",&x);

}

case 5:{Boyrank();

printf("请继续选择操作!");

scanf("%d",&x);

}

case 6:{search();

printf("请继续选择操作!");

scanf("%d",&x);

} } }

运动会管理系统需求分析

需求分析 开发者:李志文熊胜郭威 任务分配:需求分析熊胜 概要设计郭威 详细设计李志文 用户:系统管理员运动会管理员裁判员运动员 运行环境:局域网及广域网 1.需求获取方法: 通过与经常负责运动会流程的相关人员深入交流并做详细记录以及查阅相关资料外 加对题目的分析并结合自己日常生活中的经历得出需求。 2.用户需求: (1)操作界面简洁、易懂,程序主界面设置登录部分,用户需通过用户名和密码验 证后才能进入系统的水平菜单。 (2)水平命令菜单要能实现赛前编排,成绩处理,信息查询,成绩打印等功能。 (3)系统要具有信息记录、信息识别、信息报错等功能,防止比赛过程中作弊行为 的发生,并且在接受信息出现错误时提醒操作人员。 (4)系统能为参赛的教练员和运动员及时准确地提供竞赛的相关信息,辅助进行竞 赛的决策指导。 3.可行性分析: 经济可行性 1成本: 基于计算机的系统主要包括以下成本: 购置硬件、软件(如数据库管理系统、第三方开发的构件等)和设备 系统开发费用 系统安装,运行和维护费用 DBA培训费用 2效益: 大型运动会用传统的手工操作方式进行信息管理容易出现数据丢失,统计错误等问题,而且劳动强度高,速度慢,耗费人力,物力。使用计算机可以高效、准确地完成以上工作。因此,用计算机的高速度和自动化来替代手工操作,用计算机的高准确性来避免手工的错 误和误差成为了运动会举办者的最佳选择。作为计算机应用的一部分,使用计算机对运动会 信息进行管理,具有比手工管理所无法比拟的优点。 3货币的时间价值 此软件开发可带来一定的经济利益 4投资回报期

软件普及率高,很短时间就可收回最初投资成本,大致一年 技术可行性 1.风险分析 开发该软件基本无风险 2资源分析 具备开发该软件的一切资源 3技术分析 技术成熟,团队有能力完成该项目 法律可行性 不违反任何法律 4.需求协商及建模 采用面向数据流的结构化分析方法进行需求分析,在此过程中使用抽象、分解与多 视点分析来对问题进行整体抽象与分解,建立模型。系统的运行流程通过使用VISIO画出 数据流图,进行描述 登录 运动会管理 系统 系统管理赛前编排成绩处理信息查询成绩打印基运 添加用户修 改 密 码 重 新 登 录 本 信 息 处 理 分 组 分 道 编 排 秩 序 生 成 名 单 成 绩 录 入 成 绩 修 改 数 据 处 理 成 绩 公 告 成 绩 查 询 动 员 信 息 查 打 印 简 录 表 成 绩 单 奖 牌 榜 决 赛 成 绩 询 注销

(完整word版)运动会分数统计系统实验报告

运动会分数统计系统的实现 09计科(2)班 E10914044 杨素传 一、设计要求 1、问题描述 参加运动会有n个学校,学校编码为1,2,…,n,比赛分成m个男子项目和w个女子项目。项目编号为男子1,2,…,m,女子m+1,m+2,…,m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为7,5,3,2,1;前三名的积分分别5,3,2;哪些取前五名或前三名由学生自己设定(m<=20,n<=20)。 2、需求分析 (1)可以输入各个项目的前三名或前五名成绩; (2)能统计各学校成绩; (3)可以按学校编号、学校总分、男女团体总分排序输出; (4)可以按学校编号查询学校某项目情况,可以按项目编号查询取得前三名或前五名的学校。 二、概要设计 1、主界面设计 为了实现运动会分数统计系统,设计一个含有多个菜单项的主控菜单子程序以连接系统的各项子程序,方便用户使用本程序。本系统主控菜单运行界面图1所示。 图1 运动会分数统计系统程序主菜单 2、存储结构设计 本程序采用链式存储类型(LNode)存储运动会分数统计系统的节点信息。运动会分数统计系统的链表中的结点包括8个域:项目编号域(objnum)、项目类型(objtype)、运动员编号(athnum)、运动员姓名(athname[20])、学校编号(schnum)、校名(schname[30])、

运动员分数(athscore)和指向下一个节点的指针欲(struct LNode *next)。 3、系统功能设计 本系统设置了8个子功能菜单。8个子功能的设计描述如下: (1)录入各项目的成绩。由函数creatLink()实现。当用户选择该功能时,系统会以用户输入的数据运动会分数统计链表。 (2)统计各学校分数。由函数schoolScore()实现。当用户选择该功能时,系统会统计各学校分数。 (3)按学校编号顺序输出。由函数printfSchoolNumber()实现。当用户选择该功能时,系统会按学校编号顺序输出数据。 (4)按学校总分顺序输出。由函数printfSchoolScore()实现。当用户选择该功能时,系统会按学校总分顺序输出数据。 (5)按男女团体总分顺序输出。由函数printfManWomanScore()实现。当用户选择该功能时,系统会按男女团体总分顺序输出数据。 (6)按学校编号查询学校某项目情况。由函数printfSchoolObject()实现。当用户选择该功能时,系统会按学校编号输出学校某项目情况。 (7)按项目编号查询取得前三名或前五名的学校。由函数printfObjectSchool()实现。当用户选择该功能时,系统会按项目编号查询取得前三名或前五名的学校情况。 (8)退出。由exit(0)函数实现。 三、模块设计 1、模块设计 本程序包含两个模块:主程序模块和工作区选择模块。其调用关系如图2所示。 主程序模块工作区选择模块 图2 模块调用示意图 2、系统子程序及功能设计 本系统共设置个6子程序,各子程序的函数名及功能说明如下。 (1)LinkList creatLink() //创建链表(录入各项目的成绩) (2)int schoolScore(LinkList L) //统计各学校总分 (3)void printfSchoolNumber() //按学校编号顺序输出 (4)void printfSchoolScore() //按学校总分顺序输出 (5)void printfManWomanScore(LinkList L //按男女团体总分排序输出 (6)void printfSchoolObject(LinkList L) //按学校编号查询学校某项目情况 (7)void printfObjectSchool(LinkList L) //按项目编号查询取得前三名或前五名的学校 (8)int main() //主函数 3、函数主要调用关系图 本系统6个子系统之间的主要调用关系如图3所示,图中数字是各函数的编号。

C语言课程设计报告_运动会分数统计系统

课程设计报告 课程名称《C语言程序设计》 课题名称运动员分数统计系统 专业电气工程及其自动化 班级电气1186 学号201113010628 姓名何长学 指导教师王颖 2012 年6月15日

湖南工程学院 课程设计任务书 课程名称《C语言程序设计》课题运动员分数统计系统 专业班级电气1186 学生姓名何长学 学号201113010628 指导老师王颖 审批 任务书下达日期2012年6月04日 任务完成日期2012年6月15 日

一、设计内容与设计要求 1.课程设计目的: 全面熟悉、掌握C语言基本知识,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为后继课程(数据结构、数据库和汇编语言等课程)的实验以及课程设计打下较扎实的基础。 2.课题题目 ⑴班级成绩管理系统 ⑵班级档案管理系统 ⑶飞机订票系统 ⑷猜数字游戏 ⑸电子英汉词典设计 ⑹心算抢答系统 ⑺运动会分数统计系统 ⑻小学生心算CAI系统 3.设计要求: 掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一些实际的中型问题,为将来开发软件积累一些典型的案例处理经验。 具体要求如下: ⑴设计课题题目:每位同学根据自己学号除以8所得的余数加一 选择相应题号的课题。换题者不记成绩。 ⑵根据自己对应的课题完成以下主要工作:①完成系统需求分析:包 括系统设计目的与意义;系统功能需求;输入输出的要求。②完成系统概要设计:程序由哪些模块组成以及模块之间的层次结构、各模块的调用关系; 每个模块的功能;课题涉及的数据结构和数据库结构;即要存储什么数据,

C语言课程设计_运动会管理系统

物联网工程课程设计报告 课题:学校运动会管理系统 专业班级:物联网工程131班 报告人:陆俊贤 139074382 庞彦辉 139074383 指导老师:张学锋 评定成绩: 指导老师签名:

前言 随着科技的发展,计算机以其强大的性能价格优势给人们的工作、学习和生活带来极大的方便.计算机代替人工处理一些事务已成为必然。整个人类社会已进入高度信息化,人们对信息和数据的利用和处理已经进入自动化、网络化和社会化的阶段。如在查找资料、处理日常办公事务、科研生产等方面,无不需要利用大量的信息资源。因此,如何有效地进行数据信息的管理和利用,已经成为人们普遍关注的课题。信息在不同的领域里有着不同的概念,在管理科学领域中,通常认为信息是经过加工处理后的一种数据形式,是一种有次序的符号排列,它是系统传输和处理的对象。处在信息时代的今天,信息的作用越来越为人们所重视。制定成绩计划,研究投资策略,都离不开对信息的充分利用。 在当今社会上,体育运动越来越普及,参与运动会的人越来越多,素质越来越高。传统的运动会,一般是以人手组织为主,运动员的报名、赛事的安排、比赛场地的安排和成绩的记录等操作全都由人手操作,参加人数越多,运动会的规模就越大,管理工作就更加费时费力,而且容易出错。学校田径运动会管理系统则为组织者提供一个简捷方便的方式来组织管理运动会,学校田径运动会管理系统是一种“人机交互系统”,通过简单的键盘输入与鼠标点击来完成烦琐的记录与安排工作,保证运动会的正常流畅的进行。学校田径运动会管理系统是典型的数据库应用系统,可完成田径运动会管理中的运动员基本信息录入,竞赛成绩处理及公告,成绩统计.信息查询等事务处理功能。根据学校田径运动会的一般进程,本系统分为数据修改、查询、删除、统计等四个工具模块来完成所期望的功能。依据关系型数据库理论设计数据库的结构。使用该系统可以极大地减小工作人员的劳动量,同时还可大大提高工作效率、可靠性和正确性。

数据结构课程设计报告(运动会分数统计系统)

课程设计(论文)任务书 软件学院信息专业 1 班 一、课程设计(论文)题目运动会分数统计系统 二、课程设计(论文)工作自 2010 年 12 月27 日起至 2010 年 12 月31 日止。 三、课程设计(论文) 地点: 创新大楼软件学院大楼 四、课程设计(论文)内容要求: 1.课程设计的目的 为了配合《数据结构》课程的教学,使学生能更深刻地领会《数据结构》这门课程的重要性,特开设此课程设计;编写一些在特定数据结构上的算法,通过上机调试,更好的掌握各种数据结构及其特点,培养学生综合运用所学理论知识解决复杂实际问题的实践能力、研究性学习能力和团队合作能力。 2.课程设计的任务及要求 1)基本要求 (1)课程设计前必须选定课程设计题目,并认真进行需求分析; (2)上机调试之前要认真准备实验程序及调试时所需的测试数据; (3)程序结构要清晰,重点函数的重点变量,重点语句要加上清晰的程序注释;(4)独立思考,独立完成,调试过程要规范,认真记录调试结果; (5)撰写课设报告,对设计进行总结和讨论。 2)课程设计论文编写要求 (1)要按照书稿的规格撰写打印课设论文 (2)论文包括任务书、目录、绪论、正文、总结、参考文献、附录等 (3)正文中要有问题描述、设计求解算法、算法的实现、调试分析与结果 (4)课设论文装订按学校的统一要求完成 3)课设考核 从以下几方面来考查: (1)出勤情况和课设态度; (2)设计任务的难易程度及设计思路; (3)课设任务完成情况;

(4)动手调试能力; (5)论文撰写的层次性、条理性、格式的规范性。 4)参考文献 [1] 严蔚敏,吴伟民. 数据结构(C语言版)[M]. 北京:清华大学出版社, 2007年. [2] 谭浩强. C语言程序设计[M]. 北京:清华大学出版社,2006年. 5)课程设计进度安排 内容天数地点 构思及收集资料1图书馆 程序设计与调试3计算机房 撰写论文1图书馆 6)任务及具体要求 任务: 参加运动会的n个学校编号为1~n。比赛分成m个男子项目和w个女子项目,项目编号分别为1~m和m+1~m+w。由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。写一个统计程序产生各种成绩单和得分报表。 要求: 产生各学校的成绩单,内容包括各学校所取得的每项成绩的项目号、名次(成绩)、姓名和得分;产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分。 学生签名: 2010年12月27 日 课程设计(论文)评审意见 (1)任务难易及设计思路:优()、良()、中()、一般()、差()(2)动手调试能力评价:优()、良()、中()、一般()、差()(3)任务完成情况评价:优()、良()、中()、一般()、差()(4)论文撰写水平及规范性评价:优()、良()、中()、一般()、差()(5)考勤和态度:优()、良()、中()、一般()、差() 评阅人:职称:讲师 2011年1 月3 日

数据库课程设计 运动会成绩管理系统

数据库原理与应用课程设计 说明书 题目:运动会成绩管理系统 学院: 班级: 完成人:组号: 姓名:XXX 学号:XXXX 成绩: 姓名:XXX 学号:XXXX 成绩: 指导教师: 山东科技大学 2014年6月27日

课程设计任务书 一、课程设计题目:运动会成绩管理系统 二、课程设计应解决的主要问题:(按实现的系统功能) (1)运动项目、运动员、运动成绩以及班级名次的记录存储 (2)添加修改和删除项目表、运动员表和成绩表信息 (3)自动生成班级名次表(触发器) (4)运动员表有改动时,自动更新班级名次表(触发器) (5)成绩表有改动时自动对成绩表中记录按项目排名次(触发器) (6)成绩表自动排名自动更新班级名次表中班级总分(存储过程) (7)更新班级总分之后自动对班级排名(学院名次,学校名次)(存储过程) (8)对成绩表进行初次排名功能 (9)通过项目号获得相应项目的排名表(表值函数) (10)通过学号或姓名或运动号获得某学生运动成绩表(表值函数) (11)通过班级名称获得某班所有运动员运动成绩表(表值函数) (12)通过学院名称获得学院所有运动员运动成绩表(表值函数) (13)获得全校所有运动员的运动成绩表(表值函数) (14)获得全校所有班级总分数以及在学院排名和早全校排名(表值函数)三、任务发出日期:2014-4-25 课程设计完成日期:2014-6-27

小组分工说明 小组编号题目:运动会成绩管理系统 小组分工情况: XXX:参与数据库的讨论和设计;搜集整理数据、录入数据;设计了具体的逻辑结构,绘制E-R图;创建数据库以及项目表、运动员表、成绩表和班级名次表;实现了表之间的关联,创建必要的默认值、规则;创建了相应的索引;创建了班级名次表的视图。 XXX:参与数据库的讨论和设计;创建某项目名次表值函数;创建触发器实现成绩表的按项目自动排名功能;创建存储过程实现班级名次表的班级总成绩的更新功能;创建存储过程实现班级名次表的排名功能;创建触发器实现运动员表改动时自动更新班级名次表的功能;创建多个表值函数用于实现不同的查询功能:项目查询函数,个人成绩查询函数,班级成绩查询函数,学院成绩查询函数,全校成绩查询函数,全校班级名次查询函数。整个数据库部分的设计共创建了三个触发器,四个存储过程以及七个表值函数。另外还设计了本运动会成绩管理系统的界面部分,以及文档编辑工作。 组长签字: 年月日 指导教师对课程设计的评价 成绩: 指导教师签字: 年月日

数据结构课程设计—运动会分数统计系统[1]课案

运动会分数统计系统 一、需求分析 为了简便地对运动会的报名、成绩的录入和统计,本组设计开发了本系统,以解决需求。当然,本系统只是一个较为简单的系统,仍然存在着一些操作上以及显示上的问题,本组将在以后的学习中进行完善。 问题描述:参加运动会有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) 可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。 输出形式:有中文提示,各学校分数为整形 界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。

存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。 测试数据:要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。 二、概要设计 1. 本系统的流程图如下: Y N Case1 Case3 N Y Y 开始---初始化 输入 输入某项目各名次成绩 输入学校及男女项目范围 继续输 查询各学校成绩 Case2 查询团体总分 成绩查询 继续

2. 本系统采用的存储结构为结构化设计理念,这是数据库的最基本的设计要求,主要包括三个数据表: (1) 项目数据表:运动会开始前必须详细制定本次运动会所需的参赛项 目为接下来报名、场地的准备提供依据。本数据表根据要求设计存储每个项目的编号、名称、要取的名次以及各个名次对应的学校的编号,在初始输入时仅输入项目编号、名称及要取的名次,而各名次对应的学校编号将由系统自动统计。这也有利于以后项目情况的查询。 typedef struct { int itemnum; //项目编号 int top; //取名次的数目 int range[5]; //名次 int mark[5]; //分数 }itemnode; //定义项目结点的类型 (2) 学校数据表:本数据表储存了各个参赛学校的总体情况,包括学校 的编号、名称、男子团体总分、女子团体总分和学校总分。其中学校编号和名称是提前输入的,而其他三项内容将由系统进行自动统计。 typedef struct { int schoolnum; //学校编号 N N Y 输出查询学校成绩 继续 结束—退出

运动会管理系统需求说明书

文档作者:雷扬日期:2013 / 5 / 26 文档校对:刘浩、张仁保、杨平日期:2013 / 5 / 26 管理办:______________ 日期:____/____/____ 四个番茄 版权所有不得复制

1 引言 1 .1编写目的 学校田径运动会管理系统是典型的信息管理系统,本系统为田径运动会运动会组织者提供方便、快捷的方法,系统的对运动会进行合理的安排与管理,实现无纸化工作,节省大量人力和物力,随着科学技术的飞速发展与计算机技术的普遍应用,自动化的信息管理已深入各行各业,但由于传统信息管理方法的影响,目前国内高校运动会管理水平仍处于较低水平,主要存在以下问题。 1.采用人工操作,不仅费时费力,而且容易出错; 2.信息不集中,不便于人们查看,致使人们对运动会相关信息不了解; 3.信息更新费时费力,也不能及时反映得分情况; 4.对于比赛日程查询麻烦且不全面,不容易发现运动员的比赛时间冲突,给比 赛进程带来麻烦; 5.不能及时统计各项总分,不便于人们随时关注总体得分情况。 运动会管理系统系统提供了强大的高校运动会系统管理功能,方便管理员对运动员成绩等信息的操作,采用运动会管理系统后,运动员在比赛前由院系统一输入个人信息即可,方便了运动员的报名,有错误时可以及时汇报修改。裁判员单独对各自的项目进行管理,保证上了比赛的公正、公平。每个项目都有单独的帐号和密码对应,以保证成绩录入人员对自己管辖范围的唯一性。成绩查询界面中可以准确及时的查询到各项目、各运动员的个人信息、比赛成绩、排名、和团体加分的情况,同时为比赛安排裁判。系统开发完成后,可减少管理人员的数量,提高工作效率并保证数据的实时性、准确性、安全性、可靠性。 1 .2背景 在当今社会上,体育运动越来越普及,参与运动会的人越来越多,素质越来越高。传统的运动会,一般是以人手组织为主,运动员的报名、赛事的安排、比赛场地的安排和成绩的记录等操作全都由人手操作,参加人数越多,运动会的规模就越大,管理工作就更加费时费力,而且容易出错。学校运动会管理系统则为组织者提供一个简捷方便的方式来组织管理运动会,学校运动会管理系统是一

1.1运动会分数统计

#include #include #include #define N 20 /*学校最大数目*/ #define M 20 /*男子项目最大数目*/ #define W 20 /*女子项目最大数目*/ typedef struct { int inum; /*项目编号*/ int top; /*取名次的数目*/ int range[5]; /*名次*/ int mark[5]; /*分数*/ }itemnode; /*存放项目信息*/ typedef struct { int snum; /*学校编号*/ int score; /*学校总分*/ int mscore; /*男团体总分*/ int wscore; /*女团体总分*/ itemnode t[M+W]; /*项目数组*/ }snode; /*存放学校信息*/ snode a[N]; /* 定义一个学校数组*/ void menu(int n,int m,int w) /*菜单函数*/ { int c; void input(int n,int m,int w); void output(int n,int m,int w); void sortput(int n,int m,int w); void search(int n,int m,int w); printf("\t\t\t欢迎使用\t\t\t\t\n\n"); printf("\t***********运动会分数统计系统***********\n\n"); printf("\t\t*******1.信息输入*******\n"); printf("\t\t*******2.统计输出*******\n"); printf("\t\t*******3.排序输出*******\n"); printf("\t\t*******4.信息查询*******\n"); printf("\t\t*******0.退出系统*******\n\n"); printf("=======================================================\n\n"); printf("请选择要实现步骤的编号(0--4):"); scanf("%d",&c); switch(c) { case 1: input(n,m,w);break; case 2: output(n,m,w);break; case 3: sortput(n,m,w);break; case 4: search(n,m,w);break; case 0: printf("谢谢使用,再见!\n"); exit(0); default: printf("输入错误,请重试!\n"); menu(n,m,w); } } void savetofile() /*信息存入文件file*/ {

运动会分数统计系统

******************* 实践教学 ******************* 兰州理工大学 软件学院 2011年秋季学期 计算机应用基础课程设计 题目:运动会分数统计系统 专业班级:软件技术(2)班 姓名:刘正翔 学号: 指导教师:张墨逸 成绩:

目录

摘要 C语言通常别称为高级语言中的中级计算机语言。C语言由于它的可移植性和高效率,各种C语言编译程序均可产生非常紧凑、执行快捷的目标码。它比任何一种BASIC语言编译程序的目标码都紧凑、快速。这就要求有较高的理论水平,而且还要求有实际的动手能力。因此掌握C语言程序设计是学好软件技术的第一步。 本课程设计的主要目的是提高实践能力,包括提高C语言的编程能力,长期以来,注重书本知识,轻视实际动手设计能力是教学中普遍存在的现象。进行课程设计的目的就是要改变这种状况,使学习者既具有完备的理论知识,也能够解决在实际学习,生活工作中遇到的问题。学生应该能够把学习到的理论知识运用到实际中去,将知识转变为实际的能力,同时通过这些理论知识和实际的应用推动理论和实践的发展。 关键字:函数,定义,子程序,文本编辑 运动会分数统计系统 1 问题描述与分析 课程设计目的 为了巩固我们数据结构知识,加强我们的实际动手能力和提高我们综合素质,提高我们对计算机软件工程的认识学院组织我们进行了数据结构课程设计。此次课程设计要达到以下几点目的:(1)了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力。 (2)提高程序设计和调试能力。学生通过上机实习,验证自己设计的算法的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。 (3)培养算法分析能力。分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平。 (4)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能。

运动会成绩管理系统

课程设计 课程名称SQL数据库系统课程设计题目名称运动会成绩管理系统 专业班级11级计算机科学本(2)学生姓名汪静 学号51102012011 指导教师戚晓明(副教授) 二○一三年12月20日

摘要 随着信息技术在管理上越来越深入的应用,管理信息系统的实施在技术上日益成熟。管理系统是一个不断发展的新型学科,任何一个单位要生存发展,要高效地把内部活动有机的组织起来,就必须建立与自身特点相适应的管理系统。高校运动会是高校体育工作中必不可少的一项,运动会成绩管理系统也是每所高校不可缺少的一部分,它对于管理者有着重要的意义。运动会成绩管理系统能够提供给用户足够的信息和快捷的查询手段,它检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低。 本文描述的是基于Windows环境的运动会成绩管理系统,主要功能模块包括:用户登录、运动会成绩录入、运动会成绩管理、运动会成绩查询。主要工具Microsoft Visual Studio 2010 设计窗体,SQL server2008建立数据库,实现运动会成绩管理的各个功能。本篇报告介绍一个运动会成绩管理系统从分析到设计最后开发的全过程,给出了运动会成绩管理系统的设计和技术实现的过程,特别在细节上分析功能和函数的实现思想。 关键字:运动会成绩管理系统、数据库、Visual Studio 2010

ABSTRACT With the application of information technology in management more and more, the implementation of the management information system is becoming more and more mature in technology. Management system is a continuous development of new disciplines, any one unit to the survival and development, to efficiently set up internal activity of organic, it must set up corresponding to their own characteristics of management system. Sports in colleges and universities is an essential part of college sports work, sports scores and each is an indispensable part of college management system, it has important implications for managers. Sports performance management system can provide enough information to users and quick query method, it retrieves, the search rapidly convenient, the reliability high, thereserves big, the secrecy good, the long life and low cost. Described in this article is based on the Windows environment games achievement management system, main function modules include user login, sports achievements recorded scores query, sports achievements management, games. Main tool for Microsoft Visual Studio 2010 design forms, SQL server2008 database, realize sports performance management of each function. This report introduces a games achievement management system, the whole process from analysis to design the development of sports performance management system design and technical implementation process, especially on the detail analysis function and the realization of the function thought. Keyword:Games achievement management system, database, Visual Studio 2010

运动会分数统计系统的设计与实现

目录 1 实习目的 (1) 2 问题描述 (1) 3 需求分析 (1) 4 概要设计 (2) 5 详细设计 (5) 5.1数据结构定义 (5) 5.2各个函数分析 (5) 6 调试与测试 (19) 6.1调试 (19) 6.2 测试 (19) 7 使用说明 (22) 8 总结 (23) 9 参考文献 (23) 10 附录 (23)

运动会分数统计系统的设计与实现 1 实习目的 通过学习,了解并初步掌握设计、实现较大系统的完整过程,包括系统分析、编码设计、系统集成以及调试分析,熟练掌握数据结构的选择、设计、实现以及操作方法,为进一步的应用开发打好基础。 2 问题描述 参加运动会有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)可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校; (5)数据存入文件并能随时查询。 3 需求分析 3.1功能需求 本系统主要是运动会分数统计方案设计。 运动会分数统计方案适合采用结构体数组,为了实现系统功能,主要应实现以下几部分:比赛成绩输入、比赛成绩输出、查询比赛成绩和调用统计结果。 3.2 数据需求

需要输入学校编号,项目编号,取得的名次,以及哪些名次。 3.3 性能需求 本程序在运行期间,为了避免在运行大量数据时不会出错,并且能够在很短的时间内将运行结果稳定输出,就需要系统达到安全性能好,可靠性高,稳定性强,处理数据迅速等特点。 4 概要设计 4.1系统设计方案 本方案要求准备结构体数组、读写文件。还能把信息直接输入存储到文件中,读取文件中信息,从而得到结果。 (1) 菜单设计 分为主函数菜单、比赛成绩输出菜单、查询分数统计结果菜单、查询方式子菜单。 (2) 数据保存方式 建立文件,数据保存在文件中。运动运分数统计程序 (3) 数据类型 采用结构体类型。 (4) 存储结构 采用结构体类型数组存储结构存储。 (5) 算法设计 输入比赛结果模块中运用了冒泡算法将输入的数据排序。 4.2 数据库设计 系统用到的抽象数据类型定义: typedef struct { int itemnum; //项目编号

运动会成绩管理系统

运动会成绩管理系统 1.绪论 运动会成绩管理程序设计的开发是为了方便记录比赛成绩,运动员的状况和成绩,对比赛成绩进行排名。这个系统以快捷,简便为原则,更加方便了对运动会成绩的记录。运动会是很早以前就有的一项组织性活动,它的存在使人们的身体得到了锻炼。运动会是一项必不可少的活动,所以开发这个系统可以使运动会成绩的记录变的更加方便。 设计一个运动会成绩管理程序,主要实现以下功能: 1、检录功能,登录参赛运动员的信息; 2、记录成绩功能,每项比赛结束后记录参赛运动员的成绩; 3、针对不同比赛对运动员的成绩排名次; 4、可对运动员的信息和成绩进行修改、删除、查询操作。 2.系统分析 2.1功能需求 本系统要求对运动员的信息进行登录修改,记录,查询,要求可以对运动员的成绩进行单项排名。主要实现程序最初运行时运动员数据的录入以及其后的运行数据的追加功能,实现的功能是按照号码对运动员的数据记录进行修改、记录、查询、删除,按照题目的具体要求实现的是某项成绩的递减排序以及名次显示。 2.2数据需求 在这些函数当中,添加运动员数据函数例如运动员序号、运动员名称、百米赛跑成绩、三级跳成绩和撑杆跳成绩。

2.3性能需求 本系统的性能需求:要求运行稳定、数据可靠、输出准确、响应速度快、可安全运行、能很好的保存、删除、修改。可以及时保存存储删除数据,可对成绩进行排名,显示即时成绩 3.总体设计 3.1功能模块设计 经过对程序设计题目的分析可知,整个程序的设计实现大致分为5个模块,每一个模块对应一个函数。在这些函数当中,添加运动员数据函数,删除数据函数,某项成绩排序函数的实现严格按照题目的要求,而更改数据函数和显示函数属于附加功能。读取文件函数和保存信息函数对其它函数的实现起辅助作用,主函数及菜单函数控制程序的整体运行。录入信息模块是录入运动员信息、查询信息模块是查询运动员信息的、修改信息模块可以对运动员信息进行修改、删除模块可对运动员信息进进行删除、成绩排名是对运动员的成绩进行排名,功能模块见图1所示。

体育比赛成绩管理系统方案

面向对象的分析与设计课程结课大作业 学号 学生姓名 专业计算机科学与技术 班级17-5

塔里木大学教务处制

《面向对象的分析与设计》课程结课作业 体育比赛成绩管理系统 一、系统的功能需求 该体育比赛成绩管理系统是一个面向运动员,教练的用来进行对运动员比赛成绩管理的管理信息系统。 该信息系统能够为教练和运动员提供各种管理服务。(1) 运动员成绩查询系统能够为一定数目的运动员提供服务,每个运动员都能够有唯一的账号,每一个账号包括个人的编号和个人信息,系统通过一个单独的程序为运动员提供服务,不需要人员的干预,这些服务包括:查询成绩,修改自己的密码;(2) 运动员的比赛成绩需要教练对其进行录入和修改,或删除,既运动员不直接与系统交互,教练代其与系统进行交互,当然教练也可以进行对成绩的查询(3)而系统管理员主要负责的是对教练或者运动员的信息进行管理,并且管理员还得对本系统设置权限。或者可以通过教练和运动员的唯一账号对成绩进行查询。 二、用例图建模 1、需求分析如下所示: 体育比赛成绩管理系统是专门针对运动会所开发的一种以管理为基础的信

息管理系统,它涵盖成绩管理服务的所有环节,将原始的人工统计方法转换为先进的电脑管理模式。 系统管理员登录系统后,通过身份验证,能够对运动员的基本信息进行管理,包括如下:添加运动员信息、查询运动员信息、修改运动员信息、删除运动员信息。 教练可以通过身份验证,登录到系统中。若忘记密码,也可寻回。教练可以查询、录入、修改和删除运动员成绩信息。 运动员也可通过身份验证,登录到系统中。但运动员中只有查询个人成绩信息的权限,而无其他权限。 当参与者(管理员、教练和运动员)忘记密码时,也可以通过特殊方法找回密码。 2、用例图截图如下所示: 管理员用例图

运动会分数统计

运动会分数统计 【问题描述】 参加运动会有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) 五、用户使用说明..................................................................... 错误!未定义书签。 六、附录..................................................................................... 错误!未定义书签。

运动会成绩统计系统课程设计报告

运动会成绩统计系统 目录 第一章前言 (3) 第一节作业背景 (3) 第二节选题说明 (3) 第三节系统开发背景 (4) 第二章系统分析 (4) 第一节业务流程分析 (4) 第二节数据流程分析 (6) 第三节数据字典 (7) 一、数据项定义 (7) 二、数据结构定义 (7) 三、数据流定义 (7) 四、处理逻辑定义 (8) 五、数据存储定义 (8) 六、外部实体定义 (8) 第三章系统设计 (9) 第一节功能模块设计 (9) 第二节数据库设计 (10) 第三节代码设计 (13) 一、宾馆部门代码 (13) 二、客房代码 (13) 第四节输入输出设计 (14) 一、输入设计 (14) 二、输出设计 (14)

第一章前言 第一节作业背景 本文根据《管理信息系统》课程要求而做。本次课程作业共有6个课程设计题目“1.运动会成绩统计系统;2 .学籍管理系统;3.图书出纳管理系统;4.学术会议论文管理系统;5.宾馆管理系统;6.住宅小区物业管理信息系统。其中宾馆管理系统的分析与设计如下:(1)概述宾馆管理系统是客房管理,客房预定和变更,查询,结算(住宿、餐饮、购物、通讯、娱乐)等功能组成的系统;数据分析:包括数据流程图和数据字典;(2)功能模块设计;(3)数据库设计;(4)输入输出设计。 第二节选题说明 《管理信息系统》是一门复杂难学的课程,经过我的反复决策决定选择第四个课题〈宾馆管理信息系统的分析与设计〉进行分析和完成课题作业的对象。选择这个课题的主要原因有:1、经过我的初步分析,宾馆管理信息系统是我们比较陌生的,选择这个课题有助于开拓思维,了解最新发展趋势;2、本课题难度性相对其它课题的难度要底,而且可以有比较多的参考数据,我希望通过本课题作业的完成,由易到难逐步掌握《信息管理系统》这门课程所学知识,加深对管理信息系统设计与开发的认识和理解。3、宾馆管理信息系统是我们在学习本专业知识以外对于自己的一次全新的尝试和锻炼,它也具有一定的现实意义。 基本思路: 我将以课本和一些课外书籍为参考,按照按照老师的作业要求,从系统开发背景→业务流程分析→数据流分析(包括数据流程图和数据字典)→功能模块设计→数据库设计→输入输出设计→系统部署(网络设计)一步步对系统进行分析和设计。 作业目的 1.通过完成本次作业,掌握如何将自己所学的知识运用到显示的系统分析和设计中,更加深入了解和掌握管理信息系统的知识。 2.通过对系统分析和设计,培养我们独立分析和设计管理信息系统开发的能力。获得初步具有独立分析和设计管理信息系统发的能力。 运动会成绩统计系统 ◆一)可行性分析报告 (一)、系统名称: ●运动会成绩统计系统 (二)、系统目标: ●该系统的设计是为学校举办田径运动会提供方便,快捷,准 确的成绩统计方法,有便于用户的查询,并实时显示各赛场

运动会分数统计系统

数据结构课程设计 运 动 会 分 数 统 计 东华大学信息科学与技术学院 班级:电气0910班 姓名:周涛涛 学号:090901017

一.需求分析 1问题描述 运动会分数统计 参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w 个女子项目。项目编号为男子1~m,女子m+1~m+w。不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由学生自己设定。(m<=20,n<=20) 2. 基本要求: 1) 可以输入各个项目的前三名或前五名的成绩; 2) 能统计各学校总分; 3) 可以按学校编号、学校总分、男女团体总分排序输出; 4) 可以按学校编号查询学校某个项目的情况; 5) 可以按项目编号查询取得前三或前五名的学校。 3.测试数据 1)首先进入成绩录入界面,先输入学校编号1,再输入学校1各个项目成绩0或1(‘0’表示没获得该项目的该名次,‘1’表示获得了该项目的该名次); 然后再输入第二个学校编号2,再输入成绩;当输入其他的学校编号和成绩会提示错误输入,重新输入。 2)然后进入总目录,输入:1 统计各学校总分并输出; 3)输入:2 按学校编号排序输出; 4)输入:3 按学校总分排序输出; 5)输入:4 按男团体总分排序输出; 6)输入: 5 按女团体总分排序输出; 7) 输入:6 按学校编号查询学校某个项目情况; 8)输入:7 按项目编号查询取得名次的学校; 9)输入:0 退出系统; 10)输入其他数据会提示错误输入,重新输入。 二、概要设计 1 结构体 运动项目 { 项目编号;名次;};

相关主题
文本预览
相关文档 最新文档