版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、运动会成绩管理系统1.绪论运动会成绩管理程序设计的开发是为了方便记录比赛成绩,运动员的状况和成绩,对 比赛成绩进行排名。这个系统以快捷,简便为原则,更加方便了对运动会成绩的记录。运 动会是很早以前就有的一项组织性活动,它的存在使人们的身体得到了锻炼。运动会是一 项必不可少的活动,所以开发这个系统可以使运动会成绩的记录变的更加方便。设计一个运动会成绩管理程序,主要实现以下功能:1、检录功能,登录参赛运动员的信息;2、记录成绩功能,每项比赛结束后记录参赛运动员的成绩;3、针对不同比赛对运动员的成绩排名次;4、可对运动员的信息和成绩进行修改、删除、查询操作。.系统分析功能需求本系统要求对运动员的信息
2、进行登录修改,记录,查询,要求可以对运动员的成绩进 行单项排名。主要实现程序最初运行时运动员数据的录入以及其后的运行数据的追加功 能,实现的功能是按照号码对运动员的数据记录进行修改、记录、查询、删除,按照题目 的具体要求实现的是某项成绩的递减排序以及名次显示。数据需求在这些函数当中,添加运动员数据函数例如运动员序号、 运动员名称、百米赛跑成绩、 三级跳成绩和撑杆跳成绩。性能需求本系统的性能需求:要求运行稳定、数据可靠、输出准确、响应速度快、可安全运行、 能很好的保存、删除、修改。可以及时保存存储删除数据,可对成绩进行排名,显示即时 成绩.总体设计功能模块设计经过对程序设计题目的分析可知,整个程
3、序的设计实现大致分为5个模块,每一个模块对应一个函数。在这些函数当中,添加运动员数据函数,删除数据函数,某项成绩 排序函数的实现严格按照题目的要求,而更改数据函数和显示函数属于附加功能。读取文 件函数和保存信息函数对其它函数的实现起辅助作用,主函数及菜单函数控制程序的整体 运行。录入信息模块是录入运动员信息、查询信息模块是查询运动员信息的、修改信息模 块可以对运动员信息进行修改、删除模块可对运动员信息进进行删除、成绩排名是对运动 员的成绩进行排名,功能模块见图1所示运动会成绩管理系统图1功能模块图系统设计方案本系统中用到了结构体数组和数据的存储。该结构体数组中包含字符串,系统的设计方案如下:(
4、1)数据结构struct studentchar num20;/ 运动员号码char name10;/ 运动员名字float baimi;/ 百米赛跑成绩float sanjitiao;/三级跳成绩float chenggantiao;/撑杆跳成绩);(2)菜单设计一个总菜单,0、查询运动员数据;1、添加运动员数据;2、显示运动员数据;3、 删除运动员数据;4、修改运动员数据;5、百米成绩排序;6、三级跳成绩排序;7撑杆 跳成绩排序;8、退出;基本功能的实现都将体现在这几个菜单选项中。(3)函数定义了 12个函数void menu();int reads(struct student stuN
5、);/读取运动员信息void save(struct student stuN,int n);/ 储存运动员信息void search();/查询运动员信息void add();/添加运动员信息void del();/删除运动员信息void sort();/按百米赛跑成绩查询void keep();/按三级跳成绩查询void sheep();/按撑杆跳成绩查询void query();/退出程序void show();/ 显示运动员信息void change();/ 更改运动员信息.详细设计录入信息模块.添加数据函数添加数据分为两种情况,其一是在运动员文件(student.txt )不存在的情
6、况下,首先 由程序创建一个新文件,并将录入的运动员信息写入该文件当中;其二是在运动员文件(student.txt )已经存在的情况下,此时文件以追加的方式打开,这样才可以保证以前已经存在的数据不丢失。“文件打开失败!n结束图2录入信息流程图开始FILE*fp; int n,I;struct student stu;N NFp=fopen( ac:Xstudent.txt -a )=NULLY一二二 一Fp=fopen( c:student.txt, w )=NULL查询信息模块查询文件是在以存的运动员信息中进行查询,可对运动员信息进行查询显示运动员信息。通过录入运动员号码 num ,与stui
7、.num 做比较,结果相同进行 m+ , m=reads(stu);来提取文件中的数据图3查询信息流程图修改信息模块修改信息是对运动员信息进行修改,通过输入number与stui.num 比较,如果相同进行n=reads (stu)来提取信息在对信息进行修改。Struct slijdfnt stu: M|; int n. ;clr number 2。;“才e小tu;t=0图4修改信息流程图删除信息模块该函数的核心内容是删除算法以及最终对源文件的更新。该函数执行时,首先调 用reads函数将文件中的运动员信息读入数组当中,并由用户输入待删除运动员的号码, 而后按照该号码进行查找,如果文件中存在该
8、运动员的数据,则采用删除算法删除,否则 输出运动员信息不存在的提示信息。对运动员信息的具体删除算法是在结构体数组中实现 的,当运动员的信息被找到后,位于数组中该学生后面的运动员记录依次向前移动一个元 素的位置,这些操作完成后,要删除运动员信息就被后面的数组元素覆盖掉了,也就实现 了删除。开始Struct student stuN;charnumber20;int n,I,j;n=reads(stu);Scanf( $s ,number);图5删除信息流程图成绩排名模块对于某项的排序采用的排序算法是冒泡法排序,整个排序过程在结构体数组stu中实现,由于排序算法涉及到两个数组元素的信息交换,因此还
9、需要定义一个中间变量来协助。排序函数使运动员数据的排列顺序发生了变化,因此也需要对源文件进行更新。止匕外,对于运动员排序后名次的确定,仅在结果输出时予以显示,并未将名次信息写入源文件。具体的程序段如下(由于各项成绩排序函数相同,所以只给出百米赛跑排名程序):it is j, n ;n istul :At rut nturlnt Kllli EER;Kti-L黜束图6成绩排名流程图.调试和测试测试测试是在完成某一部分功能和全部功能后,根据功能和性能的需求,看看系统有没有实现要求中的功能,是否达到性能要求。系统测试是软件生存期中的一个重要阶段,系统 质量保证的关键步骤从用户的角度来看,普遍希望通过
10、软件测试暴露软件中隐藏的错误和 缺陷,所以系统测试应该是“为了发现错误而执行程序的过程”。或者说,系统测试应该 根据程序开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据 及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误或缺陷。过度 测试则会浪费许多宝贵的资源。到测试后期,即使找到了错误,然而付出了过高的代价。测试数据过程如下。当运动员成绩管理系统进行对运动员数据的添加数据号码1姓名zhanglinlin百米赛跑10三级跳9撑杆跳4.5号码2姓名yushuo百米赛跑9.8三级跳7撑杆跳4。显示信息即显示添加的数据 ,修改数据,查询数据,现在测试系统是否能够
11、正 确显示录入的所有运动员信息,当系统中已存入一定的运动员信息当执行浏览功能时,系 统会将运动员信息全部列出,当系统未存入任何信息是显示无运动员信息。测试成功,显示正确,完成测试。调试调试是程序编写中的一个重要环节,也是最复杂,对程序编写者来说是一项艰巨的任 务。调试的任务就是及时改正测试过程中发现的错误。具体地说,调试过程由两个步骤组成,它是从程序中存在错误的某种迹象开始的。首先是确定错误的准确位置,也就是找出是哪个模块或哪个语句引起的错误。然后仔细研究推断代码以确定问题的原因,并设法改正。调试过程主要是运行编制好的程序,然后遇到错误后根据系统的提示,找到相关的问题所在。本系统调试过程中遇到
12、问题、原因和解决方法如下面介绍:(1)程序运行不顺利 (2)在程序运行的过程中出现死循环、不运行和提前结束。原因是程序中出现了逻辑错误,进入查询页面后,查询的时候显示的是逻辑错误。没有写读取文件的函数m=reads(stu);所以读取不了存储的文件(2)无法将排完序的数据写入到文本文件stu_list.txt中去原因是读写文件的方式不对。截图点击运行,显示主菜单,按菜单内容选择功能如图7所示。注梵MM注MX MM修寄希善注MXMMMiMKMKMWHM MWOhMiOmW K JtMM :MNM KM1234567R-里数数数数数序改 六窈动动动动编成诚 r区运运运运距跳跳 相询加片除改米级杆出
13、 函查宣册更H-三房册BL墓:聋KM M iKKK MX XiWiMKiH 彳HHH K若时注Mj- IWKW MM JtJtJKJt请输入您要选择的操作序号.按回车键确认,图7开始界面上面的开始界面出现后,输入数字 0进入运动员信息查询界面如图8所示运目员一萧黄*黄注音MX黄MiMM蕤:MSMJKM MM MM可加示赊改米鳗杆出查新显删更百三餐疑3因S国绩萼动动动动绩成成好运运运运运成跳跳司加HT二 琏藕灌糠序SSWNiHXJiCaCXNXiKXNWXaCXXXXMXNJfM 3fi*NMHMKKMNXM:啻输过担运动贝P耐工1、按回车键确认;B姓名百米赛跑三级跳撑杆跳whang14.008
14、 .009.609.0010.004.00图8查询功能输入菜单对应的数字,进入相应程序,输入要添加的运动员数量如图9所示胃片时若XiM瞳XMiN看旬注甘-用时黄时谪曾胃XMMM WMM3 It M:M )CMK JCMWJMHM MM3梵 Mi Ji 菁 MN MM3C 肾MKiMXN MH3mM: WE MH12 3 4 5员询加乐赊改出员查添显删更百三楣耀动动动动量成好运运运运运成襄rm-理数数数数数月排排居居悬括悬WMMMjMUM MHMMM-MMMMNM! HMJCMK JK MX MMLMM: X 注:MM* MSHCX M KMX MX WHiMK 蕤*:M MXWXX*图9输入运
15、动员数量输入菜单对应的数字,进入相应程序,输入姓名,如图 10所示X Mi * *K 胃 H X * Mi M iW,*MHM JCMJC JHK KMMX MXM JC*f KXMM MX WMM 3MMW冥父箕X*瓮MMMMjf MKMMMK M M M M M iM M M)宅囚囚scn鬲.,.一.步 G窈动动动动绩成成 燃运运运运一卷跳跳 舵询加示除改米级杆出 员查添显三帮统一&舌舌舌皆舌蟒数数数数数用深I-ffffMiHM M 胃幅M MX MiM HJCJKK MM JCML X :MNJ = NX KM.M BiiM MM MM MH戟if一科一甘黄箫萧MK*请输入第1个运动员的
16、号码、姓名,用空格分开.并按回车键确认,1 ?人日ng请输入第1个运动员的百米赛跑、三级跳和撑杆跳三项成绩,用空格分开,并接回车键确认图10输入运动员信息输入菜单对应的数字,进入相应程序,显示功能输入2显示运动员信息如图11所示请输入您要选择的操作星号,技车譬困山2 mtMJmMJIMMlCMJCJO(所/的.子生nW息如 下MMMMJt序号 号码 姓名百米赛跑三破跳 撵杆跳3L16 .007.008.001YU10.007.00S.002VANG2 .眄3 .萌6演图11显示功能输入菜单对应的数字,进入相应程序,删除功能输入 3删除运动员信息如图12所示WJt 箕 MM 就 MH青春*N*看
17、着餐XW!MNKKMmHWJCM MM KM XXM:W JCMM iCHMM:里数数数数数序装 “需动动动动绩成成 患确加示除改33 友查添显删却百三$!系一,据语据据据ffffAFLLiktiMXHKX斌M箕=MMMMKMM* JOtJtMltMjM: 制N善餐带一薛一美MMXMMW城注 Jf XWLN JK%X M 箕X XXXNW M-IlWHt X Bt X H*%茸看甘菁畔请输入您要选择的操作序号,接回车键确认:3请输入要删除信息运动员号码,按回车键确认:1 删除成功!图12删除功能输入菜单对应的数字,进入相应程序,修改功能输入4修改运动员信信。如图13所示 X X X JW*M*
18、 * KMiK* MM MM *片一丁一餐”党萧党 1善苒网为桁弹押 M Wi M- H X M M * WMWlHil-9 XMKMJCN MMM:MXKXXWMLXXMKW MX WMXK端着舞苒算抻XKMXMiKMtMKN01234567S与据相裾谓相 士数数数数数序罪 毛岩岩S岩绩 霸动劫动动绩成成 b- B b-BK - bi- .- - h-B- - hr- - b- 4 & * .i“询加一族改求级杆出不查添显删更1二帮请输入您要选择的操作序号,接回车键确认;4请输入要更改信息的学生学号,接回车键确认 2清输入更改后学生的号码,姓名,百米赛跑、三级跳.撑杆跳三门成绩,接回车榜确认:1 11 9 18 4图13修改功能输入菜单对应的数字,进入相应程序百米排序输入5百米成绩排序,如图14所示图14百米成绩排名输入菜单对应的数字,进入相应程序,输入 6三级跳成绩排序,如图15所示请输入您要选择的操作匠号,接回车键朋认;6级成结果如下 *断.嶂首袜TfXK酋餐中叶中,希中餐片*7*!/苒名次 号科 姓名 三级跳 成绩111110.dQ16.0021zhanff8.fi0S.0033LI7.007.00图15三级跳成绩排名输入菜单对应的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合伙养殖协议书标准范本
- 工程试车与施工合同条款的互动关系
- 版权许可协议范本
- 出租车驾驶员聘用合同2024年
- 信用担保协议书
- 2024汽车运输合同范本简单简单版汽车维修合同范本
- 2024标准委托借款合同范本
- 北京市车辆过户协议
- 昆明短期劳动合同
- 2024年饭庄转让协议书范本
- 2024-2030年船用发动机行业市场现状供需分析及投资评估规划分析研究报告
- 农村自建房接受赠与协议书范文
- 2023年温州瑞安农商银行招聘考试真题
- 手术室护理病历临床病案
- 2023-2024学年江西省萍乡市八年级(上)期末物理试卷
- 房屋与市政工程第三方质量安全巡查标准
- 2024年广东省第一次普通高中学业水平合格性考试历史试卷(解析版)
- 工程项目建设程序及审批部门
- 物体打击事故应急求援措施
- 融媒体综艺节目制作学习通超星期末考试答案章节答案2024年
- 2024年中国融通集团子公司中层管理人员社会招聘高频难、易错点500题模拟试题附带答案详解
评论
0/150
提交评论