21游戏网
您的当前位置:首页高校运动会管理系统

高校运动会管理系统

来源:21游戏网




西南大学荣昌校区

C#程序设计

系 部 信息管理系

学生姓名 王振东

专 业 信息管理与信息系统

学 号 222009602063030



年 级 2009

指导教师 黄煜

信息管理系(部)制表

Ο一二年 四 月 二十二 日



目录

1教学实习目的.....................................................................................................................-1 -

2教学实习题目描述和要求.................................................................................................-1 -

3教学实习报告内容.............................................................................................................-1 -

4结论.....................................................................................................................................-8 -

5参考文献................................................................................................................................-8 -

6附录.....................................................................................................................................-8 -

1 教学实习目的

熟练掌握和运用C#语言的结构功能和编程技巧,熟悉visualstudio 2005

Access的开发环境。能够的建立小型的功能简单的数据库,从而能够

设计和开发小型管理信息系统,将理论与实践有机结合,使同学们真正学会、学

懂、学精C#编程语言。并且通过课程设计为即将到来的毕业课题设计做准备。



罿2 教学实习题目描述和要求

本次C#课程设计实验,大概用时10周,我们设计的是一个高校学生运动会管

理系统。要求在系统中实现学生报名,成绩的录入和查询以及检录等主要功能,

在此基础上可做适当的扩展。

3 教学实习报告内容

3.1 可行性研究报告

当前,计算机信息系统飞速发展,在各个领域以体现出它的优点。在当今社

会上,体育运动越来越普及,参与运动会的人越来越多,素质越来越高。传统的运动会,

一般是以人手组织为主,运动员的报名、赛事的安排、比赛场地的安排和成绩的记录等

操作全都由人手操作,参加人数越多,运动会的规模就越大,管理工作就更加费时费力,

而且容易出错。结合我校实际,我们每年都会组织田径运动会,在组织管理方

面突入了巨大的人力,但是效果却不是很好,因此我们认为引入信息管理系

统能使运动会的效率大大提高。通过查阅相关资料我们发现学校田径运动会

管理系统是典型的信息管理系统,本系统能为田径运动会运动会组织者提供



方便、快捷的方法,系统的对运动会进行合理的安排与管理,实现无纸化工作,节省大量人力和物力。因而,开发此系统相当有必要。

3.2项目开发计划

本系统主要分为三个模块:报名模块、成绩录入与查询模块、现场检录模块与赛程编排模块。由于时间很少,因此我们小组也做了很好的分工和项目开发的计划。首先,拿出一周的时间进行系统分析,初步了解该系统各模块要实现的相关功能。然后拿出两周的时间设计数据库的相关内容。然后利用四周的时间三人轮流完成各个模块的设计。剩下的时间对系统的相关功能查漏补缺。

3.3软件需求说明书

学校田径运动会管理系统是典型的信息管理系统,本系统为田径运动会运动会组织者提供方便、快捷的方法,系统的对运动会进行合理的安排与管理,实现无纸化工作,节省大量人力和物力。本论文首先使用了VisualC# 2005 作为开发工具和Access作为后台数据库设计充分利用VisualC# 2005以及ACCESS数据库易于使用和快速开发的特性,提高了编程效率和可靠性。同时对系统的开发原理、系统的功能特点

和设计方案进行了介绍。在对运动会管理体系进行充分分析和系统论证的基础上开发。它不

但能完成运动会管理中的基本操作,而且具有程序设计合理、操作简单等特点。

3.4概要设计说明书

学校田径运动会主界面设置为登陆窗体,用户通过密码后才能进入系统的主界面。用

户的权限有三级:管理员、班级、个人。前期编排需要定义比赛项目,运动员报名表录入,

输入记录成绩功能。比赛管理需径赛成绩录入与输出功能。查询输出需要运动员成绩、项目

成绩、班级成绩查询等功能。本系统适用于各种学校田径运动会的全程管理。本系统竞赛规



程设置灵活,输入运动员报名表方便,秩序册自动生成,成绩录入方便快捷,成绩查询功能丰富。同时还考虑了界面的友好性,操作的简单性,运行的可靠性。

3.5数据库设计说明书

本系统使用的是ACCESS数据库主要有班级信息表、管理员表、团体报名表、学生报名表、学生个人项目表、团体报名详细表、学生报名详细表等表。能实现系统对各种数据的查询、更改、删除、增加操作。根据系统分析报告中的系统逻辑模型等利用所学的技术手段和方法进行数据库表的设计,确定表的字段和字段类型、键值等

一系列问题。物理结构的设计主要确定表的所有属性包括字段、类型、取值。索引等。表的

设计如下图所示:

团体报名表



团体项目表

3.6详细设计说明书

此部分主要是各个界面的设计,首先我们来看登陆界面,在类型一项中选择不同的权限则登陆不同的页面进行相应的操作。当密码错误时在下方会自动提示。

设计如下:



我们以管理员为例进行相应的说明,管理员登陆后进入主页面,主页面设计如下:

主页面下菜单设有系统设置、报名管理、编排管理、赛场管理四个模块。可对各个模块进行相应的处理。报名管理下设有个人项目和团体项目,个人项目设计




依次进行选择即可,团体项目报名与其类似。

接下来就是编排管理,其下设有个人项目编排管理、团体项目编排管理、个人编排打印以及团体编排打印。个人项目编排设计如下:

团体项目管理也与其类似就不再赘述。



然后就是编排,个人编排如下:

选择性别和项目后,系统根据相应的算法自动进行编排。

最后一个赛程管理主要就是赛前的检录管理。包含个人检录、团体检录、个人

成绩管理、团体成绩管理等子菜单。个人检录设计如下:



全部检录后提交即可。其他几个界面的设计也比较类似。当然上面所述都是管理员的操作界面,对于个人和班级就不再赘述。

3.7用户手册

本系统是最简单的运动会管理系统,使用也是非常简单。同时,本系统为基于web高校运动会管理系统,分三种权限登陆系统进行相关操作。管理员账号为admin密码为123,其他个人账号和密码为学号,班级账号和密码为班号。管理员权限最高,可对全部人员信息进行增删改查功能,班级权限的人员只能管理本班人员信息,而个人只能管理自己的信息并能查看本班其他人的信息,但不能进行相关操作。



3.8测试计划

项目的测试计划是描述测试目的、范围、方法和软件测试的重点等的文档。

对于验证软件产品的可接受程度编写测试计划文档是一种有用的方式。

5W”规则:

1.测试的目的(Why):简要说明测试发布的质量目标:测试计划中所有测试方法和模块

已经执行通过,所有的测试案例已经执行过;

2.明确测试的范围和内容(What):录入测试,查询测试,导入导出测试;

3.确定测试的开始和结束日期(When):20123月—20124月;

4.指出测试的方法和工具(How):人工检测;

5.给出测试文档和软件的存放位置(Where):\ProgramFiles\ydhms

3.9测试分析报告

本项目是西南大学荣昌校区运动会使用的运动会管理系统,实现了学生资料的录入,比赛

项目的报名、管理、编排、打印,现场检录控制及成绩录入管理。



在测试过程中发现了系统存在部分问题,主要是对数据库的操作问题,目前已修改。该系

统功能较单一,待完善。

3.10项目开发总结报告

本次课程时间是经过黄老师的耐心讲述及指导才能顺利完成的,做项目的时候深深体会到了自身能力的不足,就业的压力无形中增大了很多。很多理论的东西看似懂了,但不能在运用在实践中。更多的是不懂,大学三年了,在专业方面的技能还有待提高。当然这些不足体现在很多方面,对语言的不熟悉,对数据库操作的不熟悉,这也让我能在以后的学习中找到自己的不足,加以改正。总之,一个项目的完成让我收获很大。

4 结论

通过本次系统设计,我们不仅加学习并且了解了更多关于数据库的使用,并且利用所学知识将各个对象的使用结合起来制作了一个完整的系统。这个运动会管理系统可以是操作员进行了学生资料的录入,比赛项目的报名、管理、编排、打印,现场检录控制及成绩录入管理。在结束了系统设计之后让我们了解了一个运动会管理系统的基本模式,学习之余扩宽了知识面。由于这是我们第一次进行操作,水平和经验现在了系统的功能。一些运动会管理系统应有的功能暂时无法实现,需要更加完善。相信在这次试验之后我们可以对运动会管理系统有进一步的学习和研究,以达到更好的发展。



致谢!

本次课程时间是经过黄老师的耐心讲述及指导才能顺利完成的。平时老师的指导给本次课程设计奠定了基础,才能基本完成本次设计中的部分操作。及时在制作过程中遇到了一些问题,黄老师依然认真指导,帮助我们解决了设计中的各种难题。在课程设计时,老师给予我们细心的讲解和辅导,使得课程设计能顺利、按时完成,让我们在学习上有了更进一步的提高。在此对老师的帮助以及教育表示深刻的感谢!!

5参考文献

[1] SQL数据库技术》数据库系统概论(第四版 王珊 萨师煊)

[2]Access2000 中文版实用培训教程 白松涛

[3]

[4]

visialC#程序设计实用教程 杨建军 清华大学出版社

全国计算机等级考试二级教程Access 数据库程序设计 高等教育出版社

[5]刘甫迎刘枝盛王蓉高等教育出版社



6 附录

部分代码附录如下:

登陆部分:stringlx = DDL_TYPE.SelectedValue.ToString();

stringuserid = TB_USERID.Text.Trim();

stringpwd = TB_PWD.Text.Trim();

if(lx == "个人")

{

stringsqlstr = "SELECT* FROM 学生信息WHERE学号='"+ userid + "'";

DataRowdr = DBHelper.QueryRow(sqlstr);

if(dr != null)

{

if(dr["密码"].ToString().Trim()== pwd)

{

Session["userId"]= userid;

Session["pwd"]= pwd;

Session["sex"]= dr["性别"].ToString().Trim();



Session["name"]= dr["姓名"].ToString().Trim();

Response.Redirect("grbm.aspx");

}

else

{

Label1.Text= "密码不正确";

}

}

else

Label1.Text= "账号不存在";

}

elseif(lx == "班级")

{

stringsqlstr = "SELECT* FROM 班级信息表WHERE班号='"+ userid + "'";

DataRowdr = DBHelper.QueryRow(sqlstr);

if(dr != null)

{

if(dr["密码"].ToString().Trim()== pwd)

罿 {

Session["userId"]= userid;

Session["pwd"]= pwd;

Session["name"]= dr["班级名"].ToString().Trim();



Response.Redirect("ttbm.aspx");

}

else

{

Label1.Text= "密码不正确";

}

}

else

Label1.Text= "账号不存在";

}

else

{

stringsqlstr = "SELECT* FROM 管理员表WHERE帐号='"+ userid + "'";

DataRowdr = DBHelper.QueryRow(sqlstr);

if(dr != null)

{

if(dr["密码"].ToString().Trim()== pwd)

{

Session["userId"]= userid;

Session["pwd"]= pwd;

Response.Redirect("Admin/Admin.aspx");

}



else

{

Label1.Text= "密码不正确";

}

}

else

Label1.Text= "账号不存在";

}

个人报名:

if(!IsPostBack)

{

stringxb = Session["sex"].ToString();

stringxh = Session["userid"].ToString();

stringsql = "SELECT项目FROM学生单人项目表WHERE性别='"+ xb + "'order by

项目";

DataTablexmdt = DBHelper.QueryTable(sql);

DropDownList1.DataSource= xmdt;

DropDownList1.DataValueField= "项目";

DropDownList1.DataBind();

bindlist();



Label1.Text= "学生:"+ Session["name"].ToString()+ " 性别:"+ xb;

}

}

privatevoidbindlist()

{

stringxh = Session["userid"].ToString();

stringsqlstr = "select项目from学生报名表where学号='"+ xh + "'";

DataTablebsdt = DBHelper.QueryTable(sqlstr);

ListBox1.DataSource= bsdt;

ListBox1.DataValueField= "项目";

ListBox1.DataBind();

}

protectedvoidButton3_Click(objectsender, EventArgse)

{

if(ListBox1.Items.Count < 2)

{

stringxh = Session["userid"].ToString();

stringxm = DropDownList1.Text.Trim();

stringsqlstr = "insert into 学生报名表(学号,项目)values('"+ xh + "','"+ xm

+"')";



if(DBHelper.insertrow(sqlstr))

{

bindlist();

}

}

}

protectedvoidButton1_Click(objectsender, EventArgse)

{

if(ListBox1.Items.Count > 0)

{

stringxm = ListBox1.SelectedValue.ToString();

stringxh = Session["userid"].ToString();

stringsqlstr = "deletefrom 学生报名表where学号='"+xh+"'and 项目='"+xm+"'";

if(DBHelper.deleterow(sqlstr))

{

bindlist();

}

个人记录:

protectedvoidDropDownList1_SelectedIndexChanged(objectsender, EventArgse)

{



stringxb = DropDownList1.SelectedValue.ToString();

if(xb != ""|| xb != "(请选择性别……)")

{

stringsql = "SELECT项目FROM学生单人项目表WHERE性别='"+ xb + "'order by

项目";

DataTablexmdt = DBHelper.QueryTable(sql);

罿DataRowdr = xmdt.NewRow();

dr[0]= "(请选择项目……)";

xmdt.Rows.InsertAt(dr,0);

DropDownList2.DataSource= xmdt;

DropDownList2.DataValueField= "项目";

DropDownList2.DataBind();

}

}

privatevoiddatabind(stringfz, stringxm, stringxb)

{

stringsql = "SELECT 学号,姓名,性别,班级名,分组号,号码FROM学生报名详细表";

sql+= "WHERE 分组号="+ fz + "AND 项目='"+ xm + "'and 性别='"+ xb + "'order

by班级名";

DataTabledt = DBHelper.QueryTable(sql);

GridView1.DataSource= dt;

GridView1.DataBind();



}

protectedvoidDropDownList3_SelectedIndexChanged(objectsender, EventArgse)

{

stringxb = DropDownList1.SelectedValue.ToString();

stringfz = DropDownList3.SelectedValue.ToString();

stringxm = DropDownList2.SelectedItem.Text.Trim();

if(fz != ""|| fz != "0")

{

databind(fz,xm, xb);

}

}

protectedvoidDropDownList2_SelectedIndexChanged(objectsender, EventArgse)

{

stringxb = DropDownList1.SelectedValue.ToString();

stringxm = DropDownList2.SelectedValue.ToString();

if(xm != ""|| xm != "(请选择项目……)")

{

//stringsql = "SELECT 项目FROM学生单人项目表WHERE性别='"+ xb + "' order

by项目";

//DataTablexmdt = DBHelper.QueryTable(sql);

//DropDownList2.DataSource= xmdt;

罿//DropDownList3.DataBind();

stringsql = "selectdistinct 分组号,''+str(分组号)+''as 分组from学生



报名详细表where性别='"+ xb + "'and 项目='"+ xm + "'order by 分组号";

DataTabledt = DBHelper.QueryTable(sql);

DataRowdr = dt.NewRow();

dr[0]= 0;

dr[1]= "(请选择分组……)";

dt.Rows.InsertAt(dr,0);

DropDownList3.DataSource= dt;

DropDownList3.DataTextField= "分组";

DropDownList3.DataValueField= "分组号";

DropDownList3.DataBind();

}

}

protectedvoidButton4_Click(objectsender, EventArgse)

{

stringxm = DropDownList2.SelectedValue.ToString();

if(xm != ""|| xm != "(请选择项目……)")

{

inti = 1;

foreach(GridViewRowgvr inGridView1.Rows)

{

stringhm = ((TextBox)gvr.FindControl("hm")).Text.Trim();

stringxh = gvr.Cells[0].Text.Trim();



stringsql = "update学生报名表set跑道='"+ i.ToString() + "',号码='"+

hm+ "'where 学号='"+ xh + "'and 项目='"+ xm + "'";

DBHelper.SqlCmd(sql);

i++;

}

个人分组:

stringxb = DropDownList1.SelectedValue.ToString();

if(xb != ""|| xb != "(请选择性别……)")

{

stringsql = "SELECT项目FROM学生单人项目表WHERE性别='"+ xb + "'order by

项目";

DataTablexmdt = DBHelper.QueryTable(sql);

DataRowdr = xmdt.NewRow();

dr[0]= "(请选择项目……)";

xmdt.Rows.InsertAt(dr,0);

DropDownList2.DataSource= xmdt;

DropDownList2.DataValueField= "项目";

DropDownList2.DataBind();

}

}

protectedvoidDropDownList2_SelectedIndexChanged(objectsender, EventArgse)

{



stringxb = DropDownList1.SelectedValue.ToString();

stringxm = DropDownList2.SelectedItem.Text.Trim();

if(xm != ""|| xm != "(请选择性别……)")

{

databind(xb,xm);

}

}

privatevoiddatabind(stringxb, stringxm)

{

stringsql = "SELECT班级名,学号,姓名,性别,项目,分组号FROM学生报名详细表";

sql+= "WHERE 性别='"+ xb + "'AND 项目='"+ xm + "'order by 分组号,班级名";

DataTabledt = DBHelper.QueryTable(sql);

sql= "SELECT* FROM 学生单人项目表WHERE性别='"+ xb + "'and 项目='"+ xm + "'";

DataRowdrxm = DBHelper.QueryRow(sql);

intzzs = int.Parse(drxm["总组数"].ToString());

stringstr = "";

str+=(xb+ "子组"+ xm);

str+=(" "+ drxm["参赛人数"].ToString()+ ""+ drxm["总组数

"].ToString()+ "");

str+=("<hr/>");

str+=("<tablewidth='100%'>");

introw = dt.Rows.Count;



intn = 0;

intmax = 9;

intmzrs = int.Parse(drxm["分组人数"].ToString());

if(mzrs > 0 && mzrs < max) max = mzrs;

for(inti = 1; i <= zzs; i++)

{

str+=("<tr><td>"+ i.ToString() + "</td></tr>");

while(n < row && dt.Rows[n]["分组号"].ToString()== i.ToString())

{

str+= ("<tr>");

for(intj = 0; j < max; j++)

{

if(n < row && dt.Rows[n]["分组号"].ToString()== i.ToString())

{

str+=("<td>"+ dt.Rows[n]["姓名"].ToString()+ "<br>"+

dt.Rows[n]["班级名"].ToString()+ "</td>");

n++;

}

else



{

str+=("<td></td>");

}

}

str+=("</tr>");

}

}

str+=("</table>");

Literal1.Text= str;

}



以下无正文

仅供个人用于学习、研究;不得用于商业用途。

Forpersonal use only in study and research; not for commercial use.

仅供个人用于学习、研究;不得用于商业用途。

Nurfür den pers?nlichen für Studien, Forschung, zu kommerziellenZwecken verwendet werden.

Pourl 'étude et la recherche uniquement à des fins personnelles; pas àdes fins commerciales.

仅供个人用于学习、研究;不得用于商业用途。

толькодля людей, которые используются дляобучения, исследований и не должныиспользоваться

вкоммерческих целях.

显示全文