课程设计报告-运动会分数统计_第1页
课程设计报告-运动会分数统计_第2页
课程设计报告-运动会分数统计_第3页
课程设计报告-运动会分数统计_第4页
课程设计报告-运动会分数统计_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计报告书专 业:计算机科学与技术 课程设计名称:?数据结构课程设计?题 目:运动会分数统计班 级: 设 计 者 学 号:设 计 者 姓 名:同 组 人 员: 指 导 老 师:完 成 时 间:摘要随着时代的进步,人们需要处理越来越多的数据,接受的信息数量也不断增加、分工的不断细化、各个行业间联系的不断密切,对数据的处理能力要求也不断提高。如何处理好生活中的信息,对信息管理,对成情况和开展趋势进行统计、规划、分析并制定切实可行的人事政策,是一项繁重而艰巨的任务。提供信息咨询,信息检索,信息存取等效劳,在此论文中主要实现对存储在数据库中的数据表进行这些简单的操作,为提对数据的处理能管理效率提供

2、了行之有效的手段。 关键词:数据结构;算法设计;开发工具;程序设计;程序调试;目录 TOC o 1-3 h z u HYPERLINK l _Toc350108306 目录 PAGEREF _Toc350108306 h 1 HYPERLINK l _Toc350108307 第一章开发环境和开发工具 PAGEREF _Toc350108307 h 1 HYPERLINK l _Toc350108308 C+简介 PAGEREF _Toc350108308 h 1 HYPERLINK l _Toc350108309 1.2 开发背景 PAGEREF _Toc350108309 h 1 HYPE

3、RLINK l _Toc350108310 1.3 开发环境 PAGEREF _Toc350108310 h 1 HYPERLINK l _Toc350108311 第二章 算法思想 PAGEREF _Toc350108311 h 3 HYPERLINK l _Toc350108312 2.1 系统需求分析 PAGEREF _Toc350108312 h 3 HYPERLINK l _Toc350108313 2.2 系统总体设计 PAGEREF _Toc350108313 h 3 HYPERLINK l _Toc350108314 2.2.1 系统设计目标 PAGEREF _Toc35010

4、8314 h 3 HYPERLINK l _Toc350108315 2.2.2 开发设计思想 PAGEREF _Toc350108315 h 3 HYPERLINK l _Toc350108316 2.2.3 系统功能模块设计 PAGEREF _Toc350108316 h 4 HYPERLINK l _Toc350108317 2.3 算法思想描述 PAGEREF _Toc350108317 h 5 HYPERLINK l _Toc350108318 第三章算法实现 PAGEREF _Toc350108318 h 6 HYPERLINK l _Toc350108319 3.1 数据结构 P

5、AGEREF _Toc350108319 h 6 HYPERLINK l _Toc350108320 3.2 程序模块 PAGEREF _Toc350108320 h 6 HYPERLINK l _Toc350108321 3.3 各模块之间的调用关系 PAGEREF _Toc350108321 h 6 HYPERLINK l _Toc350108322 3.4 源程序代码 PAGEREF _Toc350108322 h 6 HYPERLINK l _Toc350108323 第四章测试与分析 PAGEREF _Toc350108323 h 7 HYPERLINK l _Toc35010832

6、4 4.1 测试数据选择 PAGEREF _Toc350108324 h 7 HYPERLINK l _Toc350108325 4.2 测试结果分析 PAGEREF _Toc350108325 h 7 HYPERLINK l _Toc350108326 总 结 PAGEREF _Toc350108326 h 8 HYPERLINK l _Toc350108327 心得体会 PAGEREF _Toc350108327 h 9 HYPERLINK l _Toc350108328 参考文献 PAGEREF _Toc350108328 h 10开发环境和开发工具C+简介一种面向对象的开发语言,C+是

7、一种使用非常广泛的计算机编程语言。C+是一种静态数据类型检查的、支持多重编程方式的通用程序设计语言。它支持过程化程序设计、数据抽象、面向对象程序设计、泛型程序设计等多种程序设计风格。其编译器比目前其他计算机语言的编译技术更复杂。2021年8月12日公布最新正式标准c+11。C+由美国AT&T贝尔实验室的本贾尼斯特劳斯特卢普博士在20世纪80年代初期创造并实现最初这种语言被称作“C with Classes,即“带类的C。 C+保存了C语言原有的所有优点,增加了面向对象的机制。开始,C+是作为C语言的增强版出现的,从给C语言增加类开始,不断的增加新特性。虚函数virtual function、运

8、算符重载Operator Overloading、多重继承Multiple Inheritance、模板Template、异常Exception、RTTI、命名空间namespace逐渐被参加标准。1998年国际标准组织International Organization for Standardization, ISO第一次公布了C+程序设计语言的国际标准ISO/IEC 14882:1998。此后C+是具有国际标准的编程语言,该标准通常简称ANSI C+或ISO C+ 98标准,以后每5年视实际需要更新一次标准。后来又在2003年通过了C+的第二个标准ISO/IEC 14882:2003,简

9、称ISO C+ 03标准。此后,新的标准草案叫做C+ 0 x。对于C+ 0 x标准草案的最终国际投票已于2011年8月10日结束,并且所有国家都投出了赞成票,C+0 x已经毫无疑义地成为正式国际标准。先前被临时命名为C+0 x的新标准正式定名为ISO/IEC 14882:2021,简称ISO C+ 11标准。C+ 11标准将取代现行的C+标准C+98和C+03。国际标准化组织于2011年9月1日出版发布?ISO/IEC 14882:2021?,名称是:Information technology - Programming languages - C+ Edition: 3。1-3C+这个名字

10、是Rick Mascitti于1983年中所建议的,并于1983年12月首次使用。更早以前,尚在研究阶段的开展中语言曾被称为“new C,之后是“C with Classes4。在计算机科学中,C+仍被称为C语言的上层结构。它最后得名于C语言中的“+操作符其对变量的值进行递增。而且在共同的命名约定中,使用“+以表示增强的程序。Stroustrup说:“这个名字象征著源自于C语言变化的自然演进。C+是一个和C/C+无关的早期编程语言。Rick Mascitti在1992年被非正式地问起名字的由来,他表示这是在半开玩笑中说出的。他从没想过C+会成为这门语言的正式名字。有一个关于C+名字的笑话,当你

11、使用后缀+时,附加只发生在运算之后因此,它应该是+C,而不是C+,这个笑话是说时下某些程序员还在以使用C的方式使用C+,这通常被一些权威著作认为是不正确的。C+是由C开展而来的,与C兼容。用C语言写的程序根本上可以不加修改地用于C+。从C+的名字可以看出它是C的超越和集中。C+既可用于面向过程的结构化程序设计,又可用于面向对象的程序设计,是一种功能强大的混合型的程序设计语言。1.2 开发背景 随着科学技术的不断开展,计算机科学日渐成熟,其强大的功能已为人们所深刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。采用计算机进行信息化管理已成为衡量企业管理科学化和现代化的重要标志,而人事管

12、理的全面自动化、信息化那么是其中重要的组成局部。人事管理的好坏对于企业的决策者和管理者来说都至关重要,在很大程度上影响着企业的经济效益和社会效益。因此,本文所研究的人事管理信息系统具有一定的使用价值和现实意义。 开发环境本文所采用的开发环境1:PC机2:visual c+ 6.0;3:操作系统 Microsoft Windowsxp第二章 算法思想2.1 系统需求分析 随着科学技术的开展,人们日常生活中接触的信息数据越来越大。信息的大爆炸使得人们对数据信息的处理水平越来越高。为了快速的处理数据满足人们社会的需求,就需要越来越多的数据处理软件和数据处理算法,此次射击运动会分数统计就是依据生活的事

13、例通过算法编译实现对数据的排续,查找,插入,删除等操作。运动会分数统计方案适合采用结构体数组,为了实现系统功能,主要应实现以下几局部:比赛成绩输入、比赛成绩输出、查询比赛成绩和调用统计结果。2.2 系统总体设计2.2.1 系统设计目标一、1可以输入各个工程的前三名或前五名的成绩;2能统计各学校总分;3可以按学校编号或名称、学校总分、男女团体总分排序输出;4可以按学校编号查询学校某个工程的情况;可以按工程编号查询取得前三或前五名的学校。5数据存入文件并能随时查询 输入数据形式和范围:可以输入学校的名称,运动工程的名称;输出形式有提示,各学校分数为整形;界面要求有合理的提示,每个功能可以设立菜单,

14、根据提示,可以完成相关的功能要求。存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。测试数据:要求使用全部合法数据、整体非法数据、局部非法数据。进行程序测试,以保证程序的稳定。二、问题描述:包括目标、任务、条件和约束的描述。1、可以输入各个工程的前三名或前五名的成绩;2、能统计各学校总分,3、可以按学校编号、学校总分、男女团体总分排序输出;4、可以按学校编号查询学校某个工程的情况;可以按工程编号查询取得前三或前五名的学校。 三、设计:数据结构设计和核心算法设计描述,主控和功能模块层次结构;主要功能模块的输入、处理算法况架描述和输出;功能模块之间的调用与被调

15、用的关系等。需要指明每个模块的具体编写者。 2.2.2 开发设计思想 基于以上系统设计目标,本文在开发人事管理信息系统时遵循了以下开发设计思想: 采用现有的软硬件环境及先进的管理系统开发方案,从而到达充分利用现有资源,提高系统开发水平和应用效果的目的。尽量到达操作过程中的直观、方便、实用、平安等要求。系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、备份等操作2.2.3 系统功能模块设计根据分析整个系统主要划分为4个功能模块,分别执行要求中的功能。该系统分为比赛成绩输入、比

16、赛成绩输出、查询比赛成绩和调用统计结果。比赛成绩输出模块有四个子模块,分别是:按学校编号输出模块、按学校总分输出模块、安南员总分输出模块和按女团总分输出模块;查询比赛成绩模块分为按学校编号查询模块河岸工程编号查询两个子模块。设计:数据结构设计和核心算法设计描述,主控和功能模块层次结构;主要功能模块的输入、处理算法况架描述和输出;功能模块之间的调用与被调用的关系等。: 运动会分数统计程序比赛成绩输入模块比赛成绩输出模块查询比赛成绩模块工程统计结果模块按学校编号输出模块按学校总分输出模块按男团总分输出模块按女团总分输出模块按学校编号查询模块按工程编号查询模块图3-1系统功能模块图.2.3 算法思想

17、描述一、问题描述:包括目标、任务、条件和约束的描述。1、可以输入各个工程的前三名或前五名的成绩;2、能统计各学校总分,3、可以按学校编号、学校总分、男女团体总分排序输出;4、可以按学校编号查询学校某个工程的情况;可以按工程编号查询取得前三或前五名的学校。二、整个系统主要划分为4个功能模块,执行要求中的功能。该系统分为比赛成绩输入、比赛成绩输出、查询比赛成绩和调用统计结果。比赛成绩输出模块有四个子模块,分别是:按学校编号输出模块、按学校总分输出模块、安南员总分输出模块和按女团总分输出模块;查询比赛成绩模块分为按学校编号查询模块河岸工程编号查询两个子模块。 设计:数据结构设计和核心算法设计描述,主

18、控和功能模块层次结构;主要功能模块的输入、处理算法况架描述和输出;功能模块之间的调用与被调用的关系等。 指明每个模块的具体编写者。三、结构定义为:typedef struct int number; /记录学校序号 int mm; /记录男生100米第一名成绩int mm1; /记录男生100米第二名成绩int mm2; /记录男生100米第三名成绩 int fm; /记录女生100米第一名成绩int fm1; /记录女生100米第二名成绩int fm2; /记录女生100米第三名成绩int s; /记录学校总分sum;输入每个学校的情况 调用 void initline();统计各学校总分

19、void sumline();按学校编号排序输出 void puts();按学校总分排序输出 void puts1();按男女团体总分排序输出 void puts2();按学校编号查询学校某个工程的情况 void searchline();可以按工程编号查询取得前三或前五名的学校 void searchline1(); 算法实现3.1 数据结构成绩输入为数组学校的存储结构为链表, 3.2 程序模块结构体定义typedef struct int number; /记录学校序号 int mm; /记录男生100米第一名成绩int mm1; /记录男生100米第二名成绩int mm2; /记录男生1

20、00米第三名成绩 int fm; /记录女生100米第一名成绩int fm1; /记录女生100米第二名成绩int fm2; /记录女生100米第三名成绩int s; /记录学校总分sum;3.3 各模块之间的调用关系输入每个学校的情况 调用 void initline();统计各学校总分 void sumline();按学校编号排序输出 void puts();按学校总分排序输出 void puts1();按男女团体总分排序输出 void puts2();按学校编号查询学校某个工程的情况 void searchline();可以按工程编号查询取得前三或前五名的学校 void searchli

21、ne1();3.4 源程序代码 #includestdlib.h#includestdio.htypedef struct /结构定义int number; int mm;int mm1; int mm2; int fm; int fm1; int fm2; int s;sum;sum ee6;int cc=0;void initline(sum ee); /函数调用void sumline(sum ee);void puts(sum ee);void puts1(sum ee);void puts2(sum ee);void searchline(sum ee);void searchlin

22、e1(sum ee);void main() /主函数int c=1,k;printf(欢送进入运动会分数统计系统n);while(c)printf(1输入每个学校的情况n);printf(2统计各学校总分n);printf(3按学校编号排序输出n);printf(4按学校总分排序输出n);printf(5按男女团体总分排序输出n);printf(6按学校编号查询学校某个工程的情况n);printf(7可以按工程编号查询取得前三或前五名的学校n);printf(8退出n);printf(请选择要干什么n);scanf(%d,&k);switch(k) /switch语句case 1:initl

23、ine(ee);break;case 2:sumline(ee);break;case 3:puts(ee);break;case 4:puts1(ee);break;case 5:puts2(ee);break;case 6:searchline(ee);break;case 7:searchline1(ee);break;case 8:c=0;break;default:printf(errorn);void initline(sum ee) /建造,并输入每个学校的成绩int n;printf(你选择了输入每个学校的情况n);printf(学校编号从0-5n);printf(请输入学校编

24、号n);scanf(%d,&n);een.number=n;cc+;printf(请输入男生100米第一名成绩n);scanf(%d,&een.mm);printf(请输入男生100米第二名成绩n);scanf(%d,&een.mm1);printf(请输入男生100米第三名成绩n);scanf(%d,&een.mm2);printf(请输入女生100米第一名成绩n);scanf(%d,&een.fm);printf(请输入女生100米第二名成绩n);scanf(%d,&een.fm1);printf(请输入女生100米第三名成绩n);scanf(%d,&een.fm2);printf(输入完

25、毕n);void sumline(sum ee) /统计学校总分int i;printf(你选择了统计各学校总分n);printf(请输入学校编号n);scanf(%d,&i);eei.s=eei.mm+eei.mm1+eei.mm2+eei.fm+eei.fm1+eei.fm2;printf(编号为%d的学校总分是%dn,i,eei.s);void puts(sum ee) /按学校编号输出成绩int i,j,min,temp;printf(你选择了按学校编号排序输出n);for(i=0;icc;i+)min=i;for(j=i+1;jcc;j+)if(eej.numbereemin.num

26、ber)min=j;temp=eemin.number;eemin.number=eei.number;eei.number=temp;printf(学校编号排序为n);for(i=0;icc;i+)printf(%d ,eei.number);printf(n);void puts1(sum ee) /按学校总分输出成绩int i,j,min,temp;printf(你选择了按学校总分排序输出n);for(i=0;icc;i+)min=i;for(j=i+1;jcc;j+)if(eej.seemin.s)min=j;temp=eemin.s;eemin.number=eei.s;eei.s=

27、temp;printf(学校总分排序为n);for(i=0;icc;i+)printf(学校编号为%d ,总分为%d,eei.number,eei.s);printf(n);void puts2(sum ee) /按男女团体成绩总分输出成绩int i,j,min,temp;printf(你选择了按男女团体总分排序输出n);for(i=0;icc;i+)min=i;for(j=i+1;jcc;j+)if(eej.seemin.s)min=j;temp=eemin.s;eemin.number=eei.s;eei.s=temp;printf(男女团体总分排序为n);for(i=0;icc;i+)p

28、rintf(学校编号为%d ,男女团体总分为%d,eei.number,eei.s);printf(n);void searchline(sum ee) /按学校编号查询学校工程的情况int g;printf(按学校编号查询学校工程的情况n);printf(请输入学校编号n);scanf(%d,&g);printf(男生100米第一名成绩为%dn,eeg.mm);printf(男生100米第二名成绩为%dn,eeg.mm1);printf(男生100米第三名成绩为%dn,eeg.mm2);printf(女生100米第一名成绩为%dn,eeg.fm);printf(女生100米第二名成绩为%dn

29、,eeg.fm1);printf(女生100米第三名成绩为%dn,eeg.fm2);void searchline1(sum ee) /按工程编号查询学校工程的情况int g,i;printf(按工程编号查询学校工程的情况n);printf(请输入工程编号n);scanf(%d,&g);for(i=0;icc;i+)if(g=1)printf(学校编号为%d,男生100米成绩为%dn,eei.number,eei.mm+eei.mm1+eei.mm2);if(g=2)printf(学校编号为%d,女生100米成绩为%dn,eei.number,eei.fm+eei.fm1+eei.fm2); 第四章测试结果分析4.1 测试数据选择输入学校为0时男女100米的成绩。输出学校0的总成绩如图:学校0的总成绩是63按学校编号查询学校工程 4.2 测试结果分析/1、可以输入各个工程的前三名或前五名的成绩;/2、能统计各学校总分,/3、可以按学校编号、学校总分、男女团体总分排序输出;/4、可以按学校编号查询学校某个工程的情况;可以按工程编号查询取得前三或前五名的学校。按照数字提示输入相

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论