运动会成绩管理系统C++实践报告.docVIP

  • 83
  • 0
  • 约4.78千字
  • 约 9页
  • 2018-03-28 发布于河南
  • 举报
运动会成绩管理系统C实践报告

中南大学 本科生课程设计(实践)任务书、设计报告 (C++应用基础课程设计) 题 目 运动会成绩统计程序 学生学号 1104100322 学生姓名指导班级 王晋瑞 学 院 交通运输工程学院 专业班级 交通运输专业1001班 指导老师 周欣然 计算机基础教学实验中心 2011年09月08日 某学校开运动会,共有m个班参加,比赛设有n个男子项目和L个女子项目。假设项目编号为1,… ,n,n+1, … , n+L, 并且假定各比赛项目取前5名,得分顺序为7、5、3、2、1。请编写出一个程序以实现: (1)成绩数据录入。每个项目结束时,将项目编号及名称、比赛时间(可只记载开始时间)输入,并按名次输入运动员的姓名、班级、成绩。能添加、删除、修改。 (2)产生指定班级在指定时间内的总分; (3)产生指定运动员在指定时间内的总分; (4)产生指定班级在指定项目的总得分; (5)汇总各班级在指定时间内的总分,且排序输出; (6)产生各班成绩单(包括各班所取得的各项成绩的项目号、名次、运动员姓名和得分)。 (7)程序运行过程中可将数据存从文件读入内存; (8)程序运行过程中可将数据存文件; 提示:假设m≤20,n≤15,L≤10; 班级名称、比赛项目名称(如男子100米、女子5kg铅球等)都用字符串表示; 各比赛项目参赛单位为个人,即可以不考虑接力赛等多人作为参赛单位的项目; 时间可以用结构体类型数据表示; 本题实际就是要编写程序管理如下结构的表格信息,并且对表格数据按要求统计、汇总等。(建议用链表不要用数组) 项目编号 项目名称 比赛时间 姓名 班级 成绩 本选题程序应包含主控模块和其它若干个功能模块,主控模块要显示主界面和主菜单。 1.运动会程序设计系统开发设计思想 对于一个管理系统而言,主函数,函数以及成员函数是其重要组成部分。系统开发设计也是从该三方面入手,下面加以详细阐述。 (1)主函数的设计 在做一个系统开发前,一定要明确系统的功能以及功能实现时的输出(屏幕显示)。编写主函数的主要任务就是确定调用函数以及控制屏幕显示。 ①确定调用的函数 根据要求,该系统至少应该实现五种基本功能:输出工作信息,删除分数信息,修改分数信息,查找分数信息,列出所有信息。实现以上任何一种功能都必须要调用一个函数,根据标识符的定义规则,依次命名为AddNew(),DoDelete(),DoMotify(),DoFind(),List(). ②屏幕显示 一个系统要想处理信息,首先必须要输出菜单及提示信息,通过用户在键盘上的输入来选择某个功能。本系统的屏幕显示如上。 为实现该屏幕显示,输出语句完全可以放在main()函数中,但为了使主函数清晰明了,我设计了一个菜单函数Main()供其调用。 (2)函数的设计 编写函数的目的就是编写一个能实现某种功能的函数供主函数调用。根据C++面向对象的特点,函数也可以调用类中的成员函数。这样主函数,函数以及成员函数之间的层次分明,关系就清晰明了,不会有冗长的感觉。函数设计的主要任务是确定调用的成员函数以及屏幕显示。 ①确定调用的成员函数。 不同的函数调用的成员函数是不尽相同的,基本上每个函数都有一个对应的成员函数,例如AddNew()与AddItem(),DoDelete()与RemoveItem(),DoFind()与Search(),DoMotify()与Replace(),List()与Worker.List()对应,这些成员函数都是共有函数,并且只被其对应函数唯一调用一次。当然,每个函数不可能只调用一个成员函数,例如AddNew()还调用了另外两个函数Input()和Actualpay()。 ②屏幕显示 编写函数也需要控制输出以及功能间的转换,从而每一个函数都需要有一个循环来控制其结束。结束的条件都是“当输入的编号为0时结束”,循环语句有while也有do…while,例如DoDelete()和DoFind()用的是do…while, AddNew()用到的是while语句。 (3)成员函数的设计。 成员函数是系统的灵魂,因为所有的处理过程的细节都在成员函数中完成的。编写成员函数实际上就是一个算法的实现。成员函数的设计包括两方面内容:成员函数算法的实现和成员函数过程的实现。 ①成员函数算法的实现 分数管理系统不能单凭数组来处理数据,因为企业班级数是不确定的,并且数组在删除和查找某条信息是相当繁琐。所以该系统需要一个全新的数据处理方式——链表。链表是最简单也是最常用的一种动态数据结构,它是对动态获得的内存进行组织的一种结构。它不需要实现定义固定的长度,灵活性更强。 链表是算法的关键。在添加新的数据时,可以表头插入也可以表尾插入,这两种插入方法决定了其他成员函数数据

文档评论(0)

1亿VIP精品文档

相关文档