收藏 分享(赏)

运动会成绩管理系统 c语言课程设计.doc

上传人:11xg27ws 文档编号:5446292 上传时间:2019-03-03 格式:DOC 页数:34 大小:589.50KB
下载 相关 举报
运动会成绩管理系统 c语言课程设计.doc_第1页
第1页 / 共34页
运动会成绩管理系统 c语言课程设计.doc_第2页
第2页 / 共34页
运动会成绩管理系统 c语言课程设计.doc_第3页
第3页 / 共34页
运动会成绩管理系统 c语言课程设计.doc_第4页
第4页 / 共34页
运动会成绩管理系统 c语言课程设计.doc_第5页
第5页 / 共34页
点击查看更多>>
资源描述

1、沈航北方科技学院课程设计说明书课程名称 C 语言综合训练 教 学 部 工学一部 专 业 网络工程 班 级 B041111 学 号 B04111131 学生姓名 于 硕 指导教师 史 俊 2011 年 9 月沈航北方科技学院课程设计任务书教 学 部 工学一部 专业 网络工程 课程设计题目 运动会成绩管理程序设计 班级 B041111 学号 B04111131 姓名 于硕 课程设计时间: 2011 年 8 月 29 日至 2011 年 9 月 15 日课程设计的内容及要求:(一)主要内容设计一个运动会成绩管理程序,主要实现以下功能:1、检录功能,登录参赛运动员的信息;2、记录成绩功能,每项比赛结束

2、后记录参赛运动员的成绩;3、针对不同比赛对运动员的成绩排名次;4、可对运动员的信息和成绩进行修改、删除、查询操作。(二)基本要求1、系统采用 C 程序设计语言实现;2、独立完成系统的设计、编码和调试,通过指导教师当场验收;3、交出完整的课程设计报告。三)主要参考书1 谭浩强.C 程序设计(第三版). 北京:清华大学出版社,2005.72 高涛,陆丽娜.C 语言程序设计.西安西安交通大学出版社,2007.2(四)评语(五)成绩指导教师 史俊 2011 年 7 月 2 日负责教师 年 月 日运功会成绩管理程序设计1运动会成绩管理程序设计于硕目录摘要.11.绪论12.系统分析12.1 功能需求.12

3、.2 数据需求.22.3 性能需求.23.总体设计23.1 功能模块设计.23.2 系统设计方案.34详细设计.44.1 录入信息模块.44.2 查 询 信 息 模 块 54.3 修改信息模块.74.4 删除信息模块.84.5 成绩排名模块.95调试和测试.115.1 测试.115.2 调试.116.结论12结束语.12参考文献.12附录 1用户手册13附录 2源程序17运功会成绩管理程序设计2摘要运动会是一个全民健身的活动,在运动会里可以提高人们的身体素质,培养人们的素养。在参加运动会的过程中我们可以看到激情和友情的碰撞,人们用自己的实力来赢得第一。开发本系统是为了更方便,在运动会中做比赛数

4、据的记录,方便记录比赛成绩。本系统使用 C 语言作为开发语言。实现了对运动会的结果提示以及对成绩的储存和对成绩的排名。本文从分析课题的题目背景、题目意义、题目要求等出发,分别从需求分析、总体设计、详细设计、测试等各个方面详细介绍了系统的设计与实现过程,最后对系统的完成情况进行了总结。关键词:C 语言;运动会;信息管理 1.绪论运动会成绩管理程序设计的开发是为了方便记录比赛成绩,运动员的状况和成绩,对比赛成绩进行排名。这个系统以快捷,简便为原则,更加方便了对运动会成绩的记录。运动会是很早以前就有的一项组织性活动,它的存在使人们的身体得到了锻炼。运动会是一项必不可少的活动,所以开发这个系统可以使运

5、动会成绩的记录变的更加方便。设计一个运动会成绩管理程序,主要实现以下功能:1、检录功能,登录参赛运动员的信息;2、记录成绩功能,每项比赛结束后记录参赛运动员的成绩;3、针对不同比赛对运动员的成绩排名次;4、可对运动员的信息和成绩进行修改、删除、查询操作。2.系统分析2.1 功能需求本系统要求对运动员的信息进行登录修改,记录,查询,要求可以对运动员的成绩进行单项排名。主要实现程序最初运行时运动员数据的录入以及其后的运行数据的追加功能,实现的功能是按照号码对运动员的数据记录进行修改、记录、查询、删除,按照题目的具体要求实现的是某项成绩的递减排序以及名次显示。 运功会成绩管理程序设计32.2 数据需

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

7、函数控制程序的整体运行。录入信息模块是录入运动员信息、查询信息模块是查询运动员信息的、修改信息模块可以对运动员信息进行修改、删除模块可对运动员信息进进行删除、成绩排名是对运动员的成绩进行排名,功能模块见图 1 所示。运功会成绩管理程序设计4图 1 功能模块图3.2 系统设计方案本系统中用到了结构体数组和数据的存储。该结构体数组中包含字符串,系统的设计方案如下:(1)数据结构struct studentchar num20;/运动员号码char name10;/运动员名字float baimi;/百米赛跑成绩float sanjitiao;/三级跳成绩float chenggantiao;/撑杆

8、跳成绩运功会成绩管理程序设计5;(2)菜单设计一个总菜单,0、查询运动员数据;1、添加运动员数据;2、显示运动员数据;3、删除运动员数据;4、修改运动员数据;5、百米成绩排序;6、三级跳成绩排序;7 撑杆跳成绩排序;8、退出;基本功能的实现都将体现在这几个菜单选项中。(3) 函数定义了 12 个函数void menu();int reads(struct student stuN);/读取运动员信息void save(struct student stuN,int n);/储存运动员信息void search();/查询运动员信息void add();/添加运动员信息void del();/删

9、除运动员信息void sort();/ 按百米赛跑成绩查询void keep();/按三级跳成绩查询void sheep();/按撑杆跳成绩查询void query();/退出程序void show();/显示运动员信息void change();/更改运动员信息4详细设计4.1 录入信息模块1. 添加数据函数添加数据分为两种情况,其一是在运动员文件(student.txt)不存在的情况下,首先由程序创建一个新文件,并将录入的运动员信息写入该文件当中;其二是在运动员文件(student.txt)已经存在的情况下,此时文件以追加的方式打开,这样才可以保证以前已经存在的数据不丢失。运功会成绩管理程

10、序设计6开始F p = f o p e n ( “ c : s t u d e n t . t x t ” ” a” ) = = N U L LF I L E * f p ; i n t n , I ; s t r u c t s t u d e n t s t u ;F p = f o p e n ( “ c : s t u d e n t . t x t ” , ” w” ) = = N U L L“ 文件打开失败 ! n ”输入要添加运动员数量i = 1S c a n f ( ” % s % s ” , s t u . n u m ,s t u . n a m e ) ;S c a n

11、f ( “ % f % f % f ” , F p r i n t f ( f p , ” % s % s % f % f % f n ” , s t u . nu m , s t u . n a m e , s t u . b a i m i , s t u . s a n j i t i a o, s t u . c h e n g g a n t i a o ) ;i + +i = n没有找到该运动员信息J = i + 1S t u j - 1 s t u j ;S a v e ( s t u , n - 1 ) ;J + +J #include#include#include“coni

12、o.h“#define N 20struct studentchar num20;char name10;float baimi;float sanjitiao;float chenggantiao;void menu();int reads(struct student stuN);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();int rea

13、ds(struct student stuN) / 读取运动员文件中的内容运功会成绩管理程序设计20FILE *fp;int i=0;if(fp=fopen(“c:student.txt“,“r“)=NULL) printf(“文件打开失败!n“);return 0;elsefor(i=0;!feof(fp);i+)fscanf(fp,“%s %s %f %f %fn“,stui.num,stui.name,fclose(fp);return i;void save(struct student stuN,int n) / 运动员信息改变后更新文件FILE *fp;int i=0;if(fp=

14、fopen(“c:student.txt“,“w“)=NULL) printf(“文件打开失败!n“);return ;else运功会成绩管理程序设计21for(i=0;i=n)printf(“没有找到该运动员信息!n“);return;elsefor(j=i+1;j=n)printf(“无此学生信息!“);运功会成绩管理程序设计25return;printf(“n 请输入更改后学生的号码,姓名,百米赛跑、三级跳、撑杆跳三门成绩,按回车键确认:n“);scanf(“%s%s%f%f%f“,stui.num,stui.name,save(stu,n);void sort() / 按百米赛跑成绩排

15、名struct student stuN,temp;int i,j,n;n=reads(stu);for(i=0;istuj+1.baimi)temp=stuj;stuj=stuj+1;stuj+1=temp;save(stu,n); j=1 ;printf(“*百米赛跑成绩排序结果如下*nn“);printf(“ 名次 号码 姓名 百米赛跑 成绩 n“);运功会成绩管理程序设计26printf(“*n“); for(i=0;in;i+) / 输出结果并排名 if(stui.baimi=stui+1.baimi)if(stui.baimi!=0)printf(“n%3d%12s%11s%11.

16、2f%11.2fn“,j,stui.num,stui.name,stui.baimi,stui.baimi);elseprintf(“n%3d%12s%11sttttn“,j,stui.num,stui.name);elseprintf(“n%3d%12s%11s%11.2f%11.2fn“,j+,stui.num,stui.name,stui.baimi,stui.baimi);getch();void keep() / 按三级跳成绩排名struct student stuN,temp;int i,j,n;n=reads(stu);for(i=0;in-1;i+)for(j=0;jn-1;j

17、+)if(stuj.sanjitiaostuj+1.sanjitiao)temp=stuj;stuj=stuj+1;stuj+1=temp;运功会成绩管理程序设计27save(stu,n); j=1 ;printf(“*三级跳成绩排序结果如下*nn“);printf(“ 名次 号码 姓名 三级跳 成绩 n“);printf(“*n“); for(i=0;in;i+) / 输出结果并排名 if(stui.sanjitiao=stui+1.sanjitiao)printf(“n%3d%12s%11s%11.2f%11.2fn“,j,stui.num,stui.name,stui.sanjitiao,stui.sanjitiao);elseprintf(“n%3d%12s%11s%11.2f%11.2fn“,j+,stui.num,stui.name,stui.sanjitiao,stui.sanjitiao);getch();void sheep() / 按三级跳成绩排名struct student stuN,temp;int i,j,n;n=reads(stu);for(i=0;in-1;i+)for(j=0;jn-1;j+)

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 实用文档 > 课程设计

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报