运动会管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、课程设计目的
1.学习综合运用C高级语言课程和其他先修课程的知识,提高分析和解决实际问题的的能力,进一步巩固、加深和拓宽所学的知识;进一步加强结构化程序设计的思想,加深对高级语言基本语言要素和控制结构的理解。
2.全面系统的学习面向对象程序设计的基本概念、基本语法和编程方法;独立完成有一定工作量的程序设计任务,同时强调好的程序设计风格。
3.掌握程序设计中的常用算法和C语言的编程技巧和上机调试程序的方法。
4.在参与一系列子项目的实践过程中,提高如何综合运用所学知识解决实际问题的能力,以及获得相关项目管理和团队合作等众多方面的具体经验。
二、课程设计任务
按照如下要求,运用C++语言,编写一套可用的较为完善的校运动会比赛计分管理系统软件
1)参加运动会的学校及运动员基本信息(参赛学校、参赛项目、运动员性别及所在学校、得分、排名等);运动会计分规则:取前五名:第一名 7分,第二名 5分,第三名 3分,第四名2分,第五名 1分;取前三名:第一名 5分,第二名 3分,第三名 2分;计分规则也可根据需求自定义。
2)能够实现由程序提醒用户填写比赛接结果,输入各项目获奖运动员信息。
3)能够在所有信息记录完毕后,用户可查询各个学校的比赛成绩信息和排名。
4)能够显示学校信息,运动员信息,以及学校总得分。
5)能够产生各类报表,查看并打印参赛学校信息和比赛项目信息等。
注:我与网络工程102001班刘乐乐同学合作,共同完成本次有关于校运动会记分管理系统的程序设计。我负责完成学校信息录入模块、学生信息录入模块和成绩录入模块的实现
三、系统设计方案
3.1系统详细描述
3.1.1系统设计背景
随着国家对学校学生全面培养,塑造德、智、体、美、劳全面均衡发展的国家栋梁,举办运动会基本上是每个学校每年必办的一项体育性活动,目的就是为了鼓励学生们在学习的同时别忘了坚强身体的锻炼,既要有好的成绩也要有好的身体,这样才能更好地为祖国效力。为方便运动会比赛信息及结果的记录,更加有效地举办好运动会,一个好的运动会计分管理系统是非常必要的,既能比较容易地记录比赛信息,又能迅速的计算项目得分及各个学校和项目的排名。该项目作为《C++课程设计》课程的训练项目,目的是为了提高同学们系统的开发以及大家的实践能力。
3.1.2系统设计详细信息
系统适用对象设定为山西省高校联合举办的运动会,参赛学校初步设定为四个即太原科技大学、太原理工大学、山西大学、山西财经大学(可适当的加减参加比赛学校的数目)。该管理系统可以就参加的学校、运动员输入信息,通过输入比赛的成绩将各个项目和学校的排名输出,可根据用户需要增添缩减参赛学校及比赛项目。能够显示输入后经系统整理的数据。使用起来是比较方便的。
3.2功能模块划分
3.2.1功能模块描述
根据课程设计内容要求及运动会比赛相关情况,校运动会计分管理系统需要实现学校及运动员信息的录入,运动员成绩的录入,在输入后系统会自动将其排出名次,该系统有几种查询方式,可通过学校或运动员查询一系列项目及排名,如果需要的话还可以输出数据并生成报表,用户可打印出来。
为了简化程序,有以上分析可将系统分为五大模块:
1)信息录入:信息录入包括学校信息录入以及运动员信息的录入。
2)成绩录入:成绩录入主要有两个模块,分别是男子成绩录入和女子成绩录入,根据运动员在个比赛中的成绩的输入还可以对他们进行排名。
3)查询:查询模块有三种查询方式,即姓名查询、项目查询、学校查询,通过这个模块更加方便的让用户操作。
4)显示数据:该模块能够让用户更容易的看比赛成绩以及对运动员成绩的比较也是非常直观的。
5)生成报表:其功能是将用户搜寻的结果通过文本文档输出,以方便用户打印带走。
3.2.2输入输出项
以下输入项均为键盘输入:
得分规则选择 int a(1、2、3)
选择主菜单选项 int n(1、2、3、4、5、6、7、8)
学校个数 int XN
学校校名 string mingzi
学校代号 string daihao
学生数量 int SN
学生姓名 string xingming
学生性别 bool xingbie
参赛项目 bool xiangmu[4]
成绩 float chengji
选择查询方式int a(1、2、3、4)
选择显示的信息 int l(1、2、3、4)
选择现实的排名 int a(1、2、3)
输出项:
学校名次int mingci[4];
学校校名 string mingzi
学生姓名 string xingming
学生性别 bool xingbie
参赛项目 bool xiangmu[4]
成绩 float chengji
单项得分i nt defen[4]
总分 int zongfen
注:我主要负责编写信息录入和成绩录入模块,刘乐乐同学主要负责编写查询以及文件的显示及生成报表,部分内容经我们一块研究合作实现的。
四、系统实现与测试
4.1主菜单模块实现
4.1.2主菜单代码
void menu() //菜单
{
int w1,n;
system("cls");
cout<<"\t\t--------------------------------------------"< <<"\t\t*************welcome to load****************"< <<"\t\t--------------------------------------------"< <<"\t\t※※※※※※※※※※※※※※※※※※※※※※"< <<"\t\t※欢迎使用校运动会计分系统※"< <<"\t\t※※"< <<"\t\t※※"< <<"\t\t※※"< <<"\t\t※ 1.学校信息录入※"< <<"\t\t※ 2.学生信息录入※"< <<"\t\t※ 3.成绩录入※"< <<"\t\t※ 4.查询※"< <<"\t\t※ 5.显示数据※"< <<"\t\t※ 6.输出文件※"< <<"\t\t※7.显示排名※"< <<"\t\t※8.退出※"< <<"\t\t※※"< <<"\t\t※※"< <<"\t\t※※"< <<"\t\t※制作人※"< <<"\t\t※刘乐乐黄科荣※"< <<"\t\t※※"< <<"\t\t※※※※※※※※※※※※※※※※※※※※※※"< do { cout<<"请输入你想操作的代号(1-8):"< cin>>n; if(n<1||n>8) { w1=1; cout<<"您的输入有误,请重新输入!"< } else w1=0; }while(w1==1); switch(n) { case 1:xuexiaoluru();