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

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
模块:3·比赛信息管理
由 Input_Match_Information 函数建立运动会项目信息结构体数组,并且将结 构体数组设置为全局变量,可以实现以下功能,如:
11:输出全部比赛项目 调用 Output_Match_Information 函数,从 Menu 函数中接收链表头指针,从 首至尾输出运动员的所有信息; 12:输出单项比赛项目


员 信员 员 动 动 动 分 员 判


信 息信 信 员 员 员 排 信 员



息 息信信信 名 息 信


息息息

结束
4 / 15
2.3. 系统的详细设计
该系统总共分为 3 个模块,分别为运动员信息管理、裁判员信息管理、比赛 信息查询;其中系统主要功能体现在运动员信息管理模块;该系统主要功能由以 下 23 个函数实现。
模块 2:裁判员信息管理系统
由 Create_Referee 函数创建运动员链表信息,返回链表头指针,可以实现的 功能,如
9:输出全部裁判员信息 调用 Output_Athlete 函数,从 Menu 函数中接收链表头指针,从首至尾输出 运动员的所有信息; 10:按号码查询裁判员信息 调用 Find_Referee_num 函数,从 Menu 函数中接收链表头指针,并从键盘 录入所需要查询的运动员的姓名信息,将其与链表中的数据进行数据对比,如果 查询到与之相符的数据,将其输出,否则输出“查无此人”;
6 / 15
所需要查询的运动员的号码信息,将其与链表中的数据进行数据对比,如果查询 到与之相符的数据,将其删除,否则输出“查无此人”;
8:输出运动员积分排名 调用 SortLinkedlist_Athlete 函数,从 Menu 函数中接收链表头指针, SortLinkedlist_Athlete 函数嵌套调用 Insert(Ath *head,Ath *pNode)函数,Insert 函 数接收 SortLinkedlist_Athlete 函数传递的新链表的头指针以及当前节点的指针, 按照条件进行排序并且返回头指针到 SortLinkedlist_Athlete 函数,直到 SortLinkedlist_Athlete 函数将原链表所有数据全部扫描,最后返回头指针;
7 / 15
调用 Find_Single_Match_Information 函数,从 Menu 函数中分别接收运动员链 表和裁判员链表的头指针,再由 Find_Single_Match_Information 函数嵌套调用 Output_Match_Name 函数,输出所有的运动项目供用户选择,获取运动项目信 息后嵌套调用 Output_SingleMatch_AthleteInformation(Ath*head,char NAME[])函 数和 Output_SingleMatch_RefereeInformation(Re*head,char NAME[])函数,分别输 出参与该项运动的运动员和裁判员,由 Find_Single_Match_Information 函数体输 出比赛时间和地点;
图 3.2.12 输出所有比赛项目供用户选择
图 3.2.13 输出某项比赛的所有信息 12 / 15
第四章 用户手册
1、打开文件,在 VC++6.0 中运行文件,弹出欢迎界面。如下图
2、按任意键,弹出主菜单。如下图
3、根据系统提示,选择不同编号对系统进行不同的操作。例如输入 3,弹 出如下菜单。
13 / 15
第三章 算法的实现
3.1 算法的调试与测试
调试方法:
断点法、单步调试法
测试结果的分析与讨论:
测试过程中遇到的主要问题:在函数体中的变量繁多,使用时容易混乱,在使用全局变量的 时候也会不小心在某个函数改变其初始值等等。
3.2 测试的结果
8 / 15
图 3.2.2 系统主菜单
图 3.2.3 输出全部运动员信息
在当今社会上,体育运动越来越普及,参与运动会的人越来越多,素质越来 越高。传统的运动会,一般是以人手组织为主,运动员的报名、赛事的安排、比 赛场地的安排和成绩的记录等操作全都由人手操作,参加人数越多,运动会的规 模就越大,管理工作就更加费时费力,而且容易出错。学校田径运动会管理系统 则为组织者提供一个简捷方便的方式来组织管理运动会,学校田径运动会管理系 统是一种“人机交互系统”,通过简单的键盘输入与鼠标点击来完成烦琐的记录 与安排工作,保证运动会的正常流畅的进行。学校田径运动会管理系统是典型的 数据库应用系统,可完成田径运动会管理中的运动员基本信息录入,竞赛成绩处 理及公告,成绩统计.信息查询等事务处理功能。根据学校田径运动会的一般进 程,本系统分为数据修改、查询、删除、统计等四个工具模块来完成所期望的功 能。依据关系型数据库理论设计数据库的结构。使用该系统可以极大地减小工作 人员的劳动量,同时还可大大提高工作效率、可靠性和正确性。
系统主要函数: void Welcome(); Ath* Create_Athlete(); void Output_Athlete(Ath *head); Ath* Add_Athlete(Ath*head); void Find_Athlete_num(Ath*head); Ath* Updata_Athlete_num(Ath*head); void Find_Athlete_name(Ath*head); Re* Create_Referee(); void Output_Referee(Re* head); Ath* Updata_Athlete_name(Ath*head); void Find_Referee_num(Re*head_Re); Ath *Delete_Athlete(Ath*head); void Input_Match_Information(); Ath *SortLinkedlist_Athlete(Ath *head); void Output_Match_Information(); Ath *Insert(Ath *head,Ath *pNode); int Check_Athlete(Ath*head,char Num[]); void Find_Single_Match_Information(Ath*head_Ath,Re*head_Re); void Output_SingleMatch_AthleteInformation(Ath*head,char NAME[]); void Output_SingleMatch_RefereeInformation(Re*head,char NAME[]); void Menu(Ath *p,Re* p_Re); void Output_SingleMatch_Athlete_Information(Ath*p); void Output_Match_Name();
5 / 15
模块 1:运动员信息管理系统
由 Create_Athlete 函数创建运动员链表信息,返回链表头指针,可以实现的 功能,如
1:输出全部运动员信息; 调用 Output_Athlete 函数,从 Menu 函数中接收链表头指针,从首至尾输出 运动员的所有信息; 2:增加运动员信息 调用 Add_Athlete 函数,从 Menu 函数中接收链表头指针,并且将需要链接到链 表中的数据加入链表尾部,最后返回链表头指针; 3:按号码查运动员信息 调用 Find_Athlete_num 函数,从 Menu 函数中接收链表头指针,并从键盘录 入所需要查询的运动员的号码信息,将其与链表中的数据进行数据对比,如果查 询到与之相符的数据,将其输出,否则输出“查无此人”; 4:按姓名查询运动员信息 调用 Find_Athlete_name 函数,从 Menu 函数中接收链表头指针,并从键盘 录入所需要查询的运动员的姓名信息,将其与链表中的数据进行数据对比,如果 查询到与之相符的数据,将其输出,否则输出“查无此人”; 5:按号码修改运动员信息 调用 Updata_Athlete_num 函数,从 Menu 函数中接收链表头指针,并从键盘 录入所需要查询的运动员的号码信息,将其与链表中的数据进行数据对比,如果 查询到与之相符的数据,将其输出,并重新录入相关信息,返回链表头指针; 6:按姓名修改运动员信息 调用 Updata_Athlete_name 函数,从 Menu 函数中接收链表头指针,并从键盘 录入所需要查询的运动员的姓名信息,将其与链表中的数据进行数据对比,如果 查询到与之相符的数据,将其输出,并重新录入相关信息,返回链表头指针; 7:按号码删除运动员信息 调用 Delete_Athlete 函数,从 Menu 函数中接收链表头指针,并从键盘录入
3 / 15
2.2. 系统总体设计
开始
运动员管理
裁判员管理
比赛信息 管理
退出 程序

按 按按按按 输 输 按
出 增号 姓 号 姓 号 出 出 号


全 加码 名 码 名 码 运 全 码


部 运查 查 修 修 删 动 部 查


运 动运 运 改 改 除 员 裁 询


动 员动 动 运 运 运 积 判 裁
图 3.2.4 添加运动员信息 9 / 15
图 3.2.5 按号码查找运动员信息
图 3.2.6 按姓名查找运动员信息
图 3.2.7 修改运动员信息 10 / 15
图 3.2.8 将运动员按照积分排名
图 3.2.9 输出全部裁判员信息
图 3.2.10 查询裁判员信息 11 / 15
图 3.2.11 输出全部比赛信息
物联网工程课程设计报告
课题:学校运动会管理系统 专业班级:物联网工程 131 班 报告人:陆俊贤 139074382
庞彦辉 139074383 指导老师:张学锋
评定成绩:
指导老师签名:
1 / 15
前言
随着科技的发展,计算机以其强大的性能价格优势给人们的工作、学习和生 活带来极大的方便.计算机代替人工处理一些事务已成为必然。整个人类社会已 进入高度信息化,人们对信息和数据的利用和处理已经进入自动化、网络化和社 会化的阶段。如在查找资料、处理日常办公事务、科研生产等方面,无不需要利 用大量的信息资源。因此,如何有效地进行数据信息的管理和利用,已经成为人 们普遍关注的课题。信息在不同的领域里有着不同的概念,在管理科学领域中, 通常认为信息是经过加工处理后的一种数据形式,是一种有次序的符号排列,它 是系统传输和处理的对象。处在信息时代的今天,信息的作用越来越为人们所重 视。制定成绩计划,研究投资策略,都离不开对信息的充分利用。
输入 4,弹出如下界面:
4、按系统提示,又进入主菜单,输入 13 退出系统。如下图
结束语
本运动会管理系统是在 Visual C++6.0 的环境下设计和调试的。经过调试 证明:
第二章 算法思想
2.1. 系统需求分析
问题描述: 建立运动员信息系统,包括运动员、裁判员以及运动信息的成绩管理,运动 员信息为编号、姓名、身份信息、参加的比赛项目等;裁判员信息为编号、姓名、 身份信息、裁判项目;运动会信息包含各个比赛项目的信息、时间安排、裁判信 息、比赛成绩等。 运动会作为全校Leabharlann Baidu盛会,受到学生与校领导的广泛关注,为了体现信息公开 化,保证比赛的公平,我小组编写此运动会信息管理系统,为了给运动会的负责 人一些便利。其主要功能如下: (1)各种运动信息的存储; (2)输入功能:可以从键盘或文件中一次性输入多条信息; (3)输出功能:可以将运动员、裁判员、以及比赛信息打印输出或显示; (4)查找功能:根据运动员、裁判员等查找所需要的比赛信息; (5)增加、删除、修改功能;完成运动信息的多种更新;
2 / 15
第一章 设计课题
为了迎接校运动会的到来,为了能够更好地展现运动健儿的风姿,为了更加 客观的评定运动员的成绩,为了更加直观的了解到每个运动员的运动水平,我小
组建立运动会管理系统,通过这个系统,用户能够实时查询运动员的相关信息、
裁判员的基本信息,并且能够通过这个系统查询运动会项目信息,系统管理员也 可通过该系统更新运动员的相关成绩体现比赛的公开、公正、公平的原则。
相关文档
最新文档