c语言课程设计运动会比赛计分系统(含任务书)

合集下载

C运动会分数统计系统

C运动会分数统计系统

课程设计报告运动会分数统计系统1. 系统需求分析问题描述:参加运动会有n个学校,学校编号为1,2,···,n,比赛分为m个男子项目和w个女子项目。

项目编号为男子1,2,···,m个,女子m+1个,m+2个,··,m+w。

不同的项目取得前五名或前三名积分;取前五名的积分分别为7,5,3,2,1;前三名的积分分别为5,3,2;项目编号为奇数的取前五名,项目编号为偶数的取前三名(m≤20,n≤20)。

每个项目结束时,将其编号输入,并按名次顺序输入运动员姓名、学校编号和成绩。

请用C/C++编写一系统,模拟运动会分数统计过程,软件应包括如下几个方面:(一)功能要求:(1)成绩输入:要求:可以输入各个项目的前三名或前五名的成绩。

(2)成绩查询:要求:可以按学校编号查询学校各项目情况;可以按项目编号查询取得前三名或前五名的学校。

(3)成绩统计:要求:能统计各学校总分。

(4)成绩排序:要求:可以按学校编号、学校总分、男女团体总分排序输出。

(二)其它要求:(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读;(2)至少采用文本菜单界面(如果能采用图形菜单界面更好);(3)学生可自动增加新功能模块(视情况可另外加分);(4)写出课程设计报告,具体要求见相关说明文档。

2 概要设计2.1 系统功能设计根据运动会分数统计系统问题的分析和设计要求,可以将该系统可以分为三个模块:信息统计模块、信息输出模块、信息查询模块,其系统功能结构图如图1所示。

(1)信息统计模实现信息的输入、统计。

(2)信息输出模块,实现信息的输出。

(3)信息查询实现信息的查询。

图1 系统功能结构图3.详细设计:毕业设计有困难?加QQ929486211(1)定义运动项目数据类型,用于存放运动项目,包括项目编号、项目所取名次数、名次、分数。

(2)定义学校数据类型,用来存储参赛学校信息,包括学校编号、学校总分、男团总分、女团总分、项目数组。

C语言课设之校级运动会管理系统

C语言课设之校级运动会管理系统

C程序设计实习报告校际运动会管理系统一、题目要求(1)信息初始化输入:N─参赛学校总数,M─男子竞赛项目数,W─女子竞赛项目数;各项目名次取法有如下几种:错误!未找到引用源。

取前5名:第一名得分7,第二名得分5,第三名得分3,第四名得分2,第五名得分1;②取前3名:第一名得分5,第二名得分3,第三名得分2;③用户自定义:各名次权值由用户指定。

(2)提醒用户填写比赛结果,输入各项目获奖运动员信息。

(3)所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团体总分报表,察看参赛学校信息和比赛项目信息等。

二.总体设计分析整个系统,根据以上的需求分析及题目要求,可将整个系统的设计分为以下五个模块:信息输入、录入比赛结果、查询信息、退出.三、详细设计1.主函数主函数一般设计的较为简洁,只提供输入、功能处理和输出部分的函数调用。

其中各功能模块用菜单方式选择。

另外菜单部分也可以写成函数。

[流程图][程序]void main() {menu();}N图2主函数流程图void menu(){int n,w1;do{puts("\t\t***^__^ Welcome to load sports system! ^__^***\n");puts("\t\t************************MENU*************************\n");puts("\t\t******** 1.Enter the information **************\n");puts("\t\t******** 2.Score 比赛结果录入**************\n");puts("\t\t******** 3.Search **************\n");puts("\t\t******** 4.Exit **************\n");puts("\t\t******************************************************\n");printf("Choice your number(1-4):[ ]\b\b");scanf("%d",&n);if (n<1||n>4){w1=1;getchar();}else w1=0;}while (w1==1);switch(n){case 1:Information();break; //输入信息case 2:savescore();break;//比赛结果录入case 3:Search();break;//查询模块case 4:exit(0);}}2.各功能模块设计(1)信息输入模块一是参赛学校信息,二是参赛运动员信息,三是比赛项目信息,分别输入并保存图3信息输入模块流程图void Information(){int n,w ;do {puts("\n\n\n");puts("\t\t***^__^ Welcome to load 信息录入system! ^__^***\n");puts("\t\t*************************MENU*************************\n");puts("\t\t******** 1.saveathlete **********\n");puts("\t\t******** 2.saveschool **********\n");puts("\t\t******** 3.saveprogram() **********\n");puts("\t\t******** 4.back **********\n");puts("\t\t***************************************\n");printf("Choic your number(1-4):[ ]\b\b");scanf("%d",&n);if (n<1||n>4){w=1;getchar();}else w=0;}while (w==1);switch(n){case 1 : saveathlete(); break;// 保存运动员信息子函数case 2 : saveschool(); break;//保存学校信息子函数case 3 : saveprogram();break;//保存项目比赛信息子函数case 4 : exit(0);}}(2)结果录入模块图4比赛结果录入模块流程图(3)查询信息模块[分析]查询信息模块提供按不同方式查询各种信息机返回功能,其中各功能模块用菜单方式选择。

运动会管理系统c语言程序设计

运动会管理系统c语言程序设计

运动会管理系统C语言程序设计
简介
运动会管理系统是一个用C语言编写的程序,用于管理学校或机构举办的各类
运动会活动。

该系统能够帮助组织者有效地安排赛程、记录成绩以及生成相关报表,提高管理效率和赛事质量。

功能模块
1. 用户登录
•提供管理员和裁判员两类用户登录选项
•管理者可以对比赛项目、队伍信息进行管理
•裁判员可以录入比赛成绩
2. 赛事管理
•管理者可以添加、编辑、删除赛事项目
•每个赛事项目包括项目名称、参赛队伍、赛程安排等信息
3. 队伍管理
•管理者可以添加、编辑、删除参赛队伍
•每个参赛队伍包括队名、队员信息等
4. 成绩录入
•裁判员可以录入每个队伍在各个项目中的成绩
•系统可以自动计算并显示队伍的总成绩
5. 报表生成
•系统可以根据录入的成绩数据生成成绩报表
•报表可以按照项目、队伍等不同维度展示成绩数据
技术实现
该系统基于C语言编写,采用了结构体、文件读写、数据处理等基本功能和技术。

通过数据结构的设计和文件操作,实现了用户登录、赛事管理、队伍管理、成绩录入、报表生成等功能。

系统优势
•界面简洁明了,操作便捷高效
•数据处理准确可靠,确保成绩数据的准确性
•面向对象的设计,方便扩展和维护
结语
运动会管理系统C语言程序设计为学校或机构举办运动会提供了一种高效的管理方式,使赛事组织更加顺畅和专业化。

通过不断的优化和改进,该系统能够更好地满足不同运动会的管理需求,为相关活动的顺利进行提供有力支持。

C语言程序的设计运动会成绩统计系统方案

C语言程序的设计运动会成绩统计系统方案

程序设计工程训练 报告运动会分数统计系统课程名称 姓名 院(系) 专业班级 学号 指导教师教务处制C 语言程序设计工程训练 信息科学与技术学院1 需求分析. (1)2 系统总框图和功能模块说明 (2)2.1 系统总框图 (2)2.2 功能模块说明 (2)3 系统设计. (3)3.1 主要结构体 (3)3.2 主要功能函数 (3)3.3 关键函数的流程图 (4)4 系统调试. (4)5 总结. (7)6 源程序清单. (7)1需求分析1问题描述运动会分数统计参加运动会有n个学校,学校编号为1……n。

比赛分成m个男子项目,和w个女子项目。

项目编号为男子1〜m女子m+仁m+w不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由使用者设定。

(m<=20 ,n <=202. 基本要求:1) 可以输入各个项目的前三名或前五名的成绩;2) 能统计各学校总分;3) 可以按学校编号、学校总分、男女团体总分排序输出;4) 可以按学校编号查询学校某个项目的情况;5) 可以按项目编号查询取得前三或前五名的学校。

3. 测试数据1) 首先进入成绩录入界面,先输入参赛学校数,再输入男子组数和女子组数;2) 然后进入总目录;3) 输入:1输入成绩;4) 输入:2统计各校总分;5) 输入:3统计各校项目得分;6) 输入:4按学校总分排序输出;7) 输入:5按男团体总分排序输出;8) 输入:6按女团体总分排序输出;9) 输入:7按学校编号查询学校某个项目的成绩;10) 输入:8按项目编号查询取得前三名或前五名的学校;11) 输入:0退出;2系统总框图和功能模块说明2.1 系统总框图2.2 功能模块说明1) 输入:1输入成绩;............. .............. 输入某一项目的成绩2)输入: 2统计各校总分;........ •…统计各校所有项目总分之和3)输入:3 统计各校项目得分;••…•…输出各校各项目得分4)输入:4 按学校总分排序输出;………按照总分从大到小排序5)输入:5 按男团体总分排序输出;••…仅按照男子团体总分从大到小排序6) 输入:6按女团体总分排序输出;••…仅按照女子团体总分从大到小排序按项目编号查询取得前三名或前五名的学校*按学校编号查询学校某个项目的成绩按女团体总分排序输出按男团体总分排序输出1『按学校总分排序输出1统计各校个项目得分7) 输入:7按学校编号查询学校某个项目的成绩;•…输入学校编号及项目编号可查询该校的该项目成绩8) 输入:8按项目编号查询取得前三名或前五名的学校;•…输入项目编号可查询该项目获得名次的学校9) 输入:0退出;....... 退出系统3系统设计3.1主要结构体菜单号choo学校:num项目:ab男团、de女团、ke3.2主要功能函数void exit0()void in put()void each()void biaohao()void zongfen()void nanzon g()void nvzon g()void xuexiao()void xia ngmu()void main()3.3关键函数的流程图void exitO()void input()void each() void biaohao()Z -----------------------------------------------------------------------------------------------------------------------------void zongfen() void nanzon g() void nvzon g()void xuexiao() void xia ngmu()void main()4系统调试<1>开始界面,分别输入3、7、3.***运动会分数统计* *输入1后显示请选拝'1请愉人项甘1先号:1请摻頭第一、第二 弟三的名输丸荻芝学校代号,I 输入完冋2 H M MH M M3 ****** 4MWKHWK 5****** fl****** 9S.总号号成各l i w -1的五目 1分个得岀的出询询刖2多47^7 有几几 共有有少男女12345676?绩的f的五旦项或 分辻一一得蛍某罚Kin分学职的杳一族备校目入井学男辜苗 充岳 dE-一yFC ■-濒一也--止*N1Q输入2后显示请如2 学校代号=团体总成绩 坝或 S个三 得拦屮臺前询i ^^t l w s-l r •■\计期勇玄于项冷 -1嗨绩的的五mr:刖1分 个三 得前八負^学取E 三1234 5 65^13-号号学校代号:团休总成绩 1 : 5 喊绩的f的五 IT —別1分±-・ 得普某 ..屮出逆肆得 /且幫 «遗询<a备杳一二 一刖吨,^・小••戏J.•戏 " 二二一二冷 * * 二★二舞二 砂二一映123456789输入5后显示请选择;5学校代号:男子团体总成绩1 : 5输入6后显示 请选择;6学校代号:女子团体总成绩请选7更查询的学校1弋号’ 1 吏查询曲项刖弋号;1I 1所牟屜第1项目成绩为5肾学校un^刖分 得岀岀某前的出 分an^yt学取 询 分忌总号号叢S子总 成各&雇3JJ 检目 入^#学男玄子 H个一一二输入8后显示12345678校.学绩的f的五亘 项或个三岀岀某前 咸各鳥团团校目入丰学男十Z卄卄北二 I 二123456789分 得岀岀某前wiis八学取总询 的霽查分总总号号 成各套团里目入学男蛊子^^个_输入7后显示123J-5&78输入95总结本次课程设计检验了我的实践能力,感觉自己还有许多东西要学习,并不仅限于课本上的知识,实践才是真理,在学习中实践,实践中去学习。

运动会分数统计系统说明书

运动会分数统计系统说明书

目录摘要 (1)前言 (2)正文 (3)1.采用类C语言定义相关的数据类型 (3)2.各模块的伪码算法 (4)3.函数的调用关系图 (7)4.调试分析 (7)5.测试结果 (8)6.源程序(带注释) (12)总结 (15)参考文献 (17)致谢 (18)附件Ⅰ部分源程序代码 (19)摘要本次课程设计的主要任务是利用学过的数据结构的知识设计一个运动会分数统计系统。

运动会分数统计系统是一个学校不可缺少的部分,它的内容对于学校的决策者和管理者来说都至关重要,所以学生选课系统应该能够为用户提供充足的信息和快捷的查询手段。

运动会分数统计系统是典型的信息管理系统,本系统是根据现代化校园的发展而设计的运动会分数统计系统,本系统可以方便老师、运动员来学校查找成绩、名次。

要求应用程序功能完备,易使用等特点。

实现全校运动会信息在线查询。

还可以对新的运动信息进行信息录入。

由于运动项目种类繁多,可以实现信息修改。

通过本次课程设计可以加深理解线性表、查找表的逻辑结构、存储结构,掌握查找、排序等基本运算的实现,进一步理解和熟练掌握课本中所学的各种数据结构。

关键词:数据结构;运动会;分数统计系统;C语言前言本学期开设的《算法与数据结构》课程已经告一段落,。

在学习科目的第一节课起,张老师就为我们阐述了它的重要性。

它对我们来说具有一定的难度。

它是其它编程语言的一门基本学科。

尽管不好学,但是我们必须学好这门课程,这对于我们计算机专业的学生来说意义重大。

经过一个学期的理论知识的学习,对于数据结构相关的知识有了一定的了解。

这是一门纯属于设计的科目,它需用把理论变为上机调试和具体实践。

在课程结束之后。

老师为我们安排了这次为期两周的课程设计。

目的就是让我们自己在计算机上自己设计算法来实现相应的功能以及锻炼学生的动手能力和实践能力,最重要的是要把我们所学的数据结构的理论知识应运到实践中去。

这次课程设计的题目是“运动会分数统计系统”,要求学生自己查阅相关资料,完成相应的任务,自己上机设计算法,调试程序,运行出结果,以此来加深理解线性表、查找表的逻辑结构、存储结构,掌握查找、排序等基本运算的实现,进一步理解和熟练掌握课本中所学的各种数据结构,学会如何把学到的知识用于解决实际问题,培养自己的动手能力。

运动会比赛计分系统

运动会比赛计分系统

湖南商学院课程设计(实习)报告题目运动会比赛计分系统姓名:谭斌学号:100910062专业: 电子信息工程班级: 电信1002班指导老师: 梁英组员: 田驰颜伟计算机与电子工程学院2011年8月目录1 概述 (1)1.1设计目的 (1)1.2 课程设计内容 (1)1.3相关知识 (2)2 系统设计 (2)2.1系统功能要求 (2)2.2.1主函数 (3)2.2.2数组 (3)2.2.3文件的储存 (4)2.3程序流程图 (5)3 调试与运行 (6)3.1调试结果 (7)3.1.1首先运行文件运动会统计分数7.exe (7)3.1.2 输入信息 (7)3.1.3输出信息 (8)3.1.4查询信息 (11)3.1.5 调用信息 (11)3.2调试过程中出现的问题和处理方式 (11)4 总结 (12)4.1调试中所遇到的较重要问题的回顾 (12)4.1.1提出问题 (12)4.1.2解决问题 (12)4.1.3提出问题 (12)4.1.4分析问题 (12)4.1.5解决问题 (13)4.1.6提出问题 (13)4.1.7分析问题 (13)4.1.8解决问题 (13)4.2算法的效率及改进设想 (13)5 心得体会 (14)附1 (14)附2 (14)附3 (27)附4 (28)附5 (29)参考文献 (30)一、概述1.1设计目的《数据结构》主要介绍一些最常用的数据结构,阐明各种数据结构内在的逻辑关系,讨论其在计算机中的存储表示,以及在其上进行各种运算时的实现算法,并对算法的效率进行简单的分析和讨论。

数据结构是介于数学、计算机软件和计算机硬件之间的一门计算机专业的核心课程,它是计算机程序设计、数据库、操作系统、编译原理及人工智能等的重要基础,广泛的应用于信息学、系统工程等各种领域。

数据结构课程设计是为数据结构课程独立开设的实践性教学环节。

数据结构课程设计对于巩固数据结构知识,加强学生的实际动手能力和提高学生综合素质是十分必要的。

C语言程序设计运动会成绩统计系统

C语言程序设计运动会成绩统计系统Prepared on 21 November 2021程序设计工程训练报告运动会分数统计系统课程名称C语言程序设计工程训练姓名院(系)信息科学与技术学院专业班级学号指导教师教务处制目录1 需求分析1问题描述运动会分数统计参加运动会有n个学校,学校编号为1……n。

比赛分成m个男子项目,和w个女子项目。

项目编号为男子1~m,女子m+1~m+w。

不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由使用者设定。

(m<=20,n<=20)2. 基本要求:1) 可以输入各个项目的前三名或前五名的成绩;2) 能统计各学校总分;3) 可以按学校编号、学校总分、男女团体总分排序输出;4) 可以按学校编号查询学校某个项目的情况;5) 可以按项目编号查询取得前三或前五名的学校。

3.测试数据1)首先进入成绩录入界面,先输入参赛学校数,再输入男子组数和女子组数;2)然后进入总目录;3)输入:1 输入成绩;4)输入:2 统计各校总分;5)输入:3 统计各校项目得分;6)输入:4 按学校总分排序输出;7)输入:5 按男团体总分排序输出;8)输入:6 按女团体总分排序输出;9)输入:7 按学校编号查询学校某个项目的成绩;10)输入:8 按项目编号查询取得前三名或前五名的学校;11)输入:0 退出;2 系统总框图和功能模块说明系统总框图功能模块说明1)输入:1 输入成绩;···························输入某一项目的成绩2)输入:2 统计各校总分;···········统计各校所有项目总分之和3)输入:3 统计各校项目得分;·······输出各校各项目得分4)输入:4 按学校总分排序输出;·······按照总分从大到小排序5)输入:5 按男团体总分排序输出;····仅按照男子团体总分从大到小排序6)输入:6 按女团体总分排序输出;····仅按照女子团体总分从大到小排序7)输入:7 按学校编号查询学校某个项目的成绩;···输入学校编号及项目编号可查询该校的该项目成绩8)输入:8 按项目编号查询取得前三名或前五名的学校;···输入项目编号可查询该项目获得名次的学校9)输入:0 退出;······退出系统3 系统设计主要结构体菜单号choo学校:num项目:ab男团、de女团、ke主要功能函数void exit0()void input()void each()void biaohao()void zongfen()void nanzong()void nvzong()void xuexiao()void xiangmu()void main()关键函数的流程图4 系统调试<1>开始界面,分别输入3、7、3.输入1后显示void exit0()void input()void each() void biaohao()void zongfen() void nanzong() void nvzong()void xuexiao() void xiangmu()void main()输入2后显示输入3后显示输入4后显示输入5后显示输入6后显示输入7后显示输入8后显示输入9》》》》退出5 总结本次课程设计检验了我的实践能力,感觉自己还有许多东西要学习,并不仅限于课本上的知识,实践才是真理,在学习中实践,实践中去学习。

C运动会分数统计系统

课程设计报告运动会分数统计系统1. 系统需求分析问题描述:参加运动会有n个学校,学校编号为1,2,···,n,竞赛分为m个男子项目和w个女子项目。

项目编号为男子1,2,···,m个,女子m+1个,m+2个,··,m+w。

不同的项目取得前五名或前三名积分;取前五名的积分别离为7,5,3,2,1;前三名的积分别离为5,3,2;项目编号为奇数的取前五名,项目编号为偶数的取前三名(m≤20,n≤20)。

每一个项目终止时,将其编号输入,并按名次顺序输入运动员姓名、学校编号和成绩。

请用C/C++编写一系统,模拟运动会分数统计进程,软件应包括如下几个方面:(一)功能要求:(1)成绩输入:要求:能够输入各个项目的前三名或前五名的成绩。

(2)成绩查询:要求:能够按学校编号查询学校各项目情形;能够按项目编号查询取得前三名或前五名的学校。

(3)成绩统计:要求:能统计各学校总分。

(4)成绩排序:要求:能够按学校编号、学校总分、男女集体总分排序输出。

(二)其它要求:(1)只能利用C/C++语言,源程序要有适当的注释,使程序容易阅读;(2)至少采纳文本菜单界面(若是能采纳图形菜单界面更好);(3)学生可自动增加新功能模块(视情形可另外加分);(4)写出课程设计报告,具体要求见相关说明文档。

2 概要设计系统功能设计依照运动会分数统计系统问题的分析和设计要求,能够将该系统能够分为三个模块:信息统计模块、信息输出模块、信息查询模块,其系统功能结构图如图1所示。

(1)信息统计模实现信息的输入、统计。

(2)信息输出模块,实现信息的输出。

(3)信息查询实现信息的查询。

图1 系统功能结构图3.详细设计:毕业设计有困难?加QQ 1(1)概念运动项目数据类型,用于寄存运动项目,包括项目编号、项目所取名次数、名次、分数。

(3)信息查询功能void inquiry( )为查询函数。

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

运动会管理系统课程设计C语言一、引言随着体育事业的发展和学校体育教育的普及,运动会作为学校重要的体育活动,对于培养学生的身体素质、团队精神和竞争意识起着至关重要的作用。

为了更好地组织和管理运动会,提高效率和便捷性,开发一个运动会管理系统是非常必要的。

本文将以C语言编写一个运动会管理系统为课程设计,旨在通过对运动会管理流程和功能的分析,设计一个能够满足实际需求的系统。

二、系统需求分析2.1 运动会管理流程1.运动会筹备阶段:确定运动会的时间、地点、项目和参赛人员等基本信息。

2.运动会报名阶段:学生根据自己的兴趣和特长选择参加的项目,并提交报名信息。

3.运动会编排阶段:根据报名信息,将学生分组编排,并制定比赛日程表。

4.运动会比赛阶段:按照日程表进行比赛,记录成绩并进行排名。

5.运动会奖励阶段:根据比赛成绩确定奖项和奖品,并进行颁奖仪式。

2.2 系统功能需求1.学生信息管理:包括学生的基本信息、成绩等,方便运动会报名和编排。

2.运动项目管理:包括项目的名称、项目类型、项目人数限制等,用于报名和编排。

3.报名管理:学生选择参加的项目,提交报名信息,并生成报名表。

4.编排管理:根据报名信息自动分组编排,并生成比赛日程表。

5.比赛成绩管理:记录学生的比赛成绩,并根据成绩进行排名。

6.奖励管理:根据比赛成绩确定奖项,记录奖励情况,并进行统计。

三、系统设计3.1 数据结构设计系统将使用以下数据结构来存储和管理数据:1.学生:包括学生的学号、姓名、性别、年级、班级等信息。

2.项目:包括项目的编号、名称、类型、项目人数限制等信息。

3.报名表:包括学生的报名信息,即学生和所选择的项目的关联关系。

4.比赛成绩:包括学生的比赛成绩和相应的项目编号。

5.奖励情况:包括奖项名称、获奖学生的学号和奖品等信息。

3.2 系统模块设计根据系统需求分析,可以设计以下模块来实现各项功能:1.学生信息管理模块:用于添加、查询、修改和删除学生信息。

C语言程序设计运动会成绩统计系统

程序设计工程训练报告运动会分数统计系统课程名称 姓名 院(系)专业班级 学号 指导教师教务处制C 语言程序设计工程训练 信息科学与技术学院1 需求分析. (1)2 系统总框图和功能模块说明 (2)2.1 系统总框图 (2)2.2 功能模块说明 (2)3 系统设计. (3)3.1 主要结构体 (3)3.2 主要功能函数 (3)3.3 关键函数的流程图 (4)4 系统调试. (4)5 总结. (7)6 源程序清单. (7)1 需求分析1 问题描述运动会分数统计参加运动会有n个学校,学校编号为1……n。

比赛分成m个男子项目,和w个女子项目。

项目编号为男子1〜m女子m+仁m+w不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由使用者设定。

(m<=20,n<=20)2. 基本要求:1) 可以输入各个项目的前三名或前五名的成绩;2) 能统计各学校总分;3) 可以按学校编号、学校总分、男女团体总分排序输出;4) 可以按学校编号查询学校某个项目的情况;5) 可以按项目编号查询取得前三或前五名的学校。

3. 测试数据1) 首先进入成绩录入界面,先输入参赛学校数,再输入男子组数和女子组数;2) 然后进入总目录;3) 输入:1 输入成绩;4) 输入:2 统计各校总分;5) 输入:3 统计各校项目得分;6) 输入:4 按学校总分排序输出;7) 输入:5 按男团体总分排序输出;8) 输入:6 按女团体总分排序输出;9) 输入:7 按学校编号查询学校某个项目的成绩;10) 输入:8 按项目编号查询取得前三名或前五名的学校;11) 输入:0 退出;2系统总框图和功能模块说明2.1 系统总框图2.2 功能模块说明1) 输入:1输入成绩;............. ............... 输入某一项目的成绩2)输入: 2统计各校总分;......... •…统计各校所有项目总分之和3)输入:3 统计各校项目得分;••…•…输出各校各项目得分4)输入:4 按学校总分排序输出;………按照总分从大到小排序5)输入:5 按男团体总分排序输出;••…仅按照男子团体总分从大到小排序6) 输入:6按女团体总分排序输出;••…仅按照女子团体总分从大到小排序7) 输入:7按学校编号查询学校某个项目的成绩;•…输入学校编号及项目编号可查询该校的该项按项目编号查询取得前三名或前五名的学校按男团体总分排序输出1T按学校总分排序输出1F统计各校个项目得分统计各校分数输入成绩目成绩8) 输入:8按项目编号查询取得前三名或前五名的学校;•…输入项目编号可查询该项目获得名次的学校9) 输入:0退出;....... 退出系统3 系统设计3.1 主要结构体菜单号choo学校:num项目:ab男团、de女团、ke3.2 主要功能函数void exit0()void input()void each()void biaohao()void zongfen()void nanzong()void nvzong()void xuexiao()void xiangmu()void main()3.3关键函数的流程图void zongfen() void nanzon g() void nvzon g()4系统调试<1>开始界面,分别输入3、7、3.输入1后显示请场入反冃代尸:1请呻昭第一、第二 第三和名棍恢旅辅人菽牲半校仪帛1£^ol-rl F 9r分 牛 得岀'It K ±l s3i i少男女示几儿 屁;编void xuexiao() void xia ngmu()void main()-M 的五绩的f的近输入2后显示冃前 理』 分 - ■5出 F r rl千帛 rn .-一l:h 面问l Tn .--I:b 询闻,匸环卫蓉宜总E '.'-耳巧也 吗董爲需L J-■»出出蕃 常冃逼汙J7逞取 K H 1 m —r 「订 进宀—f-学总広需嚅 ZJTgoss奉黑 “一刖Irj rr r t-n -I A 丄 M上鸟卫,尸 -T%—■¥I-r I M .J .r■> ; ;T ■ 1三12345£7"9WM 学驾号:团严 顶或 廿 个二得巒#前 讦目“世电-■T 学取 茅曇只#1£ 、-比」r—I*"紅入甘学杲玄壬..n 出输入5后显示请选择*5 学校代号啰子团休总成绩1 : 52 :3 3: 2校学绩的 的古 俗出岀某前的岀总询 的^K K ^S'囹号号成各套团1S 入学男窓子 Iz z1S 34567B 9输入6后显示 ;青选择I 6 校学 绩的 f i n E 富学校的五1女子团体总成绩0 酉 1得岀岀某前 的出SSW分畠專学取 总询的香一 分总思号号成各套团团校目 入男学校代号 1 2 *123456789输入7后显示! 11顶目成绩为51分得出出某】 的出输 分^14*学取 总^^^-询分刍特畐号号 我各各吱団用瑁吕输入8后显示5总结本次课程设计检验了我的实践能力,感觉自己还有许多东西要学习,并不仅限于课本上的知识,实践才是真理,在学习中实践,实践中去学习。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、课程设计目的将理论教学中涉及到的知识点贯穿起来,对不同的数据类型、程序控制结构、数据结构作一比较和总结,结合设计题目进行综合性应用,对所学知识达到融会贯通的程度。

通过课程设计,学生在下述各方面的能力应该得到锻炼:(1)进一步巩固、加深学生所学专业课程《C语言教程》的基本理论知识,理论联系实际,进一步培养学生综合分析问题,解决问题的能力。

(2)全面考核学生所掌握的基本理论知识及其实际业务能力,从而达到提高学生素质的最终目的.(3)利用所学知识,开发小型应用系统,掌握运用C语言编写调试应用系统程序,训练独立开发应用系统,进行数据处理的综合能力.(4)对于给定的设计题目,如何进行分析,理清思路,并给出相应的数学模型。

(5)掌握自顶而下的设计方法,将大问题进行模块化,领会结构化程序设计的方法.(6)熟练掌握C语言的基本语法,灵活运用各种数据类型。

(7)进一步掌握在集成环境下如何调试程序(单步调试,设置断点、观察表达式,分块调试)和修改程序。

二、课程设计名称及内容课程设计名称:运动会比赛计分系统设计内容:设计一个运动会比赛计分系统,该系统要求对运动会比赛得分进行管理和维护.三、任务和要求要求:初始化输入:N-参赛学校总数,M-男子竞赛项目数,W-女子竞赛项目数各项目名次取法有如下几种:(1)取前5名:第一名得分7分,第二名得分5,第三名得分3,第四名得分2,第五名得分1;(2)取前3名:第一名得分5,第二名得分3,第三名得分2;(3)用户自定义:各名次权值由用户指定.四、设计方案提示(1)界面系统以菜单方式工作(2)输入数据并存入文件使用到结构体变量和动态链表,由程序提醒用户填写比赛结果,输入各项目获奖运动员信息。

对输入的信息进行合法性判断,直到输入正确为止.都输入完成后,调用写文件函数对指定的文件进行写操作,把输入的信息写入到文件中。

(3)显示所有记录将文件中的所有记录以表格的形式输出.如果文件未打开会出现“文件打开失败!按任意键返回.。

.”,关闭文件.(4) 查询所有信息记录完毕后,用户可以查询各个学校的比赛成绩,生成团体总分报表,查看参赛学校信息和比赛项目信息等。

二:算法设计:信息输入模块、比赛结果录入模块以及查询模题目的总体要求是要建立三个模块:信息输入模块、建立三个模块块。

在建立完之后,要求该程序能够在用户将各种必要的信息记录之后,用户可以查询所有学校的比赛成绩,而且也可以生成团体总分表,查看参赛学校信息和比赛项目信息等一切录入的信息,为此,要示编程人员能通过一些具体的程序将以上的功能加以实现。

在建立三个模块的大前提下,我们将采用结构体,循环体,指针和各种函数来实现这种功能,在数据结构体中,要采用结构体数组,其中包括学校、项目、运动员三个结构体。

学校结构体成员包括学校校名、竞赛项目、得分项目结构体成员包括项目名、权值. (1)在此程序中,包括几个头文件:mainfile.h;dos。

h; conio.h; momery。

h;接下来,定义全)局变量,其中包括“参赛学校项目数N;男子项目数M;女子项目数W;参赛学校g_school;竞赛项目g_sport; 各名次链表指针ptrHead,ptrThis,ptrNew;总体设计:系统设计为信息输入模块、比赛结果录入模块和查询模块三个模块。

总体设计:系统设计为信息输入模块、比赛结果录入模块和查询模块三个模块。

(2)各种结构的分析: )各种结构的分析:静态存储方式:它是指在程序运行期间由系统分配固定的存储空间的方式,全局变量全部存静态存储方式: 放在静态存储区中,在程序开始执行时给全局变量分配存储区,程序执行完毕就释放,在程序执行过程中它们占据固定的存储单元,而不是动态地进行分配和释放。

用static 声明局部变量:使用该变量可以使局部变量的值在函数调用结束后不消失而保留原值,这即为静态局部变量的特点. 静态局部变量属于静态存储类别,在静态存储区内分配存储单元,在程序整个运行期间都不释放。

对静态局部变量是在编译时赋初值的,即只赋初值一次,在程序运行时它已有初值,以后每次调用函数时不再重新赋初值而只是保留上次函数调用结束时的值。

如在定义局部变量时不赋初值的话,则对静态局部不说,编译时自动赋初值0 (对数值型变量)或空字符总体设计信息输入模块比赛结果录入模块查询模块设置参赛信息设置竞赛项目总数主菜单设置竞赛项目信息设置项目名次取法生成报表打印竞赛项目信息填充参赛信息请输入您的选择开始。

而对自动变量来说,如果不赋初值则它的值是一个不确定的值。

虽然静态局部变量在函数调用结束后仍然存在,但其他函数是不能引用它的。

Malloc 函数函数的作用是在内存的动态存储区中分配一个长度为size 的连续空间。

此函数的值是一个指向分配域起始地址的指针,如果此函数未能成功地执行,则返回空指针。

链表是动态地进行存储分配的一种结构,所谓建立动态链表是指在程序执行过程中从无到有地建立一个链表,即一个一个地开辟结点和输入各结点数据,并建立起前后相链的关系。

循环结构是结构程序设计的基本结构之一,它和顺序结构、选择结构共同作为各种复循环结构杂程序的基本构造单元。

通常用while、do…while 语句实现循环,最常用的是for 语句的循环,夺循环中还有循环的嵌套,它是指一个循环体内又包含另一个完整的循环结构。

用语句来实现从循环体内跳出来,即提前结束循环,接着执行循环下面的语句,但break 语句不能用于循环语句和swich 语句之外的任何其他语句中。

另外一种就是continue 语句,它的作用是结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。

Swich 语句语句是多分支选择语句,它后面括号内的“表达式” ,ANSI 标准允许它为任何类型.当表达式的值与一个case 后面的常量表达式的值相等时,就执行此case 后面的语句,若所有的case 中的常量表达式的值都没有与表达式的值匹配的, 就执行default 后面的语句,每一个case 的常量表达式的值必须都不相同;否则就会出现相互矛盾的现象。

各个case 和default 的出现次序不影响执行结果,执行完一个case 后面的语句后,流程控制转移到下一个case 继续执行. “case 常量表达式”只是起语句标号作用,并不是在该处进行条件判断。

在执行swich 语句时,根据swich 后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断程序流程图开始请输入您的选择c s i p q 编号n=0?i〈=2 i=0 i=1 0 2 1 MAX—M MAX—W 男团总分女团总分r 团体总分输出t 生成报表结束HOU 第 6 页2010/9/5 项目名次的取法及每一名次的分值开始请选择编号0 1 2 0 7 输入名次0 5 1 5 1 3 t=i 2 3 2 2 i=i+1 3 2 i〉0 4 1 n〈5 n〈3 输出****************************MENU1******************************* ******1。

enter!!! 2。

record!!!3。

search!!!*******************************************************************************choice your number:()二、课程设计体会在此次的C 语言的课程设计中,,我不仅学到了许多有庆这方面的专业知识,更重要的是我学会了如何在拿到一个题目时进行简单的程序分析,并编译出一些相对简单的程序,当然了,对自己编译出的不对的程序,我也能进行一些分析,并对其进行完善。

在此次的学习过程中,老师教给了我们很多的东西,从一开始的不懂VC++这种软件,到最后的我们可以进行较熟练的应用它,也许在这过程中,我们无论是学生还是老师都遇到了一些小的困难,但是在我们师生的共同努力下,我们最终还是克服了它,单从这一点来说,我们就学到了许多的东西,比如teamwork,同学之间的相互帮助以及与老师的配合,都证明了这一点,我相信这是我此次学习 C 语言程序的最大收获。

在我的程序设计的过程中,遇到了很大有难题,特别是在刚拿到我的题目时,头脑中根本没有头绪,更不要说去编译程序了,当时真的很担心是否可以完成老师布置的任务,但慢慢的在学习的过程中,我开始懂得了一些编译的方法,就尝试着去编译一些程序,结果还是很好,最后我编出了我题目的程序,但是在程序的运行过程中,又遇到了新的难题,那就是我所编的程序中有太多的错误,根本无法进行运行,没办法,只好硬着头皮修改,不过还好,在老师和同学们的帮助下,我最终将我的程序成功地进行了运行,在我自己的程序运行时,心中有一种说不出的高兴,是的,自己这几天的努力总是没有白费。

五.附录:源代码:#include<stdio.h>#include〈math。

h>#include<stdlib。

h>#define n 2#define m 1#define w 1typedef struct{int top;int range[5];int mark[5];int itemnum;}itemnode;typedef struct{int schoolnum;int score;int mscore;int wscore;itemnode c[m+w];}headnode;headnode h[n];void input(){int i,j,k,s;for(i=0;i〈n;i++){h[i]。

schoolnum=0;h[i].score=0;h[i]。

mscore=0;h[i].wscore=0;}for(i=0;i<n;i++){printf(”\n学校编号:”);scanf(”%d”,&h[i].schoolnum);for(j=0;j〈m+w;j++){printf("\n项目编号:");scanf("%d”,&h[i].c[j].itemnum);printf("\n取前3或前5名:");scanf(”%d”,&h[i].c[j]。

top);while(h[i].c[j].top!=3&&h[i].c[j]。

top!=5){printf("\n输入错误,请重新输入!:");scanf("%d",&h[i].c[j]。

top);break;}printf(”\n获得几个名次:”);scanf("%d",&k);for(s=0;s〈5;s++)h[i].c[j]。

相关文档
最新文档