48 选美比赛管理

48 选美比赛管理

ID:47084634

大小:112.50 KB

页数:16页

时间:2019-07-21

48 选美比赛管理_第1页
48 选美比赛管理_第2页
48 选美比赛管理_第3页
48 选美比赛管理_第4页
48 选美比赛管理_第5页
资源描述:

《48 选美比赛管理》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、沈阳航空工业学院课程设计学号200704033048班级7403302姓名苟国庆指导教师王晓岩2009年3月5日沈阳航空工业学院课程设计任务书院系:航空宇航工业学院专业:飞行器设计与工程班级:7403302学号:200704033048题目:选美比赛管理一、课程设计时间2008~09第2学期第1周,共计1周,20学时。二、课程设计内容课程设计内容:用C语言编写程序完成以下任务:一批选手参加比赛,比赛的规则是最后得分越高,名次越低。当半决赛结束时,要在现场按照选手的出场顺序宣布最后得分和最后名次,获得相同分数的选手

2、具有相同的名次,名次连续编号,不用考虑同名次的选手人数。例如:选手序号:1,2,3,4,5,6,7选手得分:5,3,4,7,3,5,6输出名次为:3,1,2,5,1,3,4编写程序完成半决赛的评分排名工作,并按以上格式将结果输出到屏幕及文件beauty.dat三、课程设计要求1.贯彻结构化程序设计思想。2.用户界面友好,功能明确,操作方便;可以加以其它功能或修饰。3.用户界面中的菜单至少应包括“数据输入”、“选手排名”、“保存结果”、“退出”4项。4.代码应适当缩进,并给出必要的注释,以增强程序的可读性。四、指导

3、教师和学生签字指导教师:________学生签名:________五、说明书成绩六、教师评语沈阳航院设计用纸目录一、需求分析1二、程序流程图2三、核心技术的实现说明及相应程序段6四、课设总结11五、参考文献11六、源程序1213沈阳航院设计用纸一、需求分析经过对程序设计题目的分析可知,整个程序的设计实现大致分为六个模块,其中每一个模块对应一个函数,它们的功能分别是:1添加选手成绩,2排序函数,3保存成绩函数,4成绩查询函数,5删除数据函数,以及6版本信息。在这些函数当中,前四个函数的实现严格按照题目的要求,而后面

4、的两个函数属于附加功能。1、添加选手数据函数主要实现程序最初运行时学生数据的录入以及其后的运行中的数据追加功能;2、排序函数主要实现按照选手的出场顺序宣布最后得分和最后名次,获得相同分数的选手具有相同的名次,名次连续编号,不用考虑同名次的选手人数3、保存函数按照题目的具体要求实现的是成绩的保存,将选手的序号,成绩,名次保存在beauty.dat中;4、显示成绩函数按照选手的序号,成绩,名次进行查询;5、清屏函数可以实现见屏幕上的数据清空,便于操作。看起来简洁。13沈阳航院设计用纸6、版本信息显示制作人,制作日期等

5、相关信息。除上面介绍的功能之外,程序还具有退出功能,可以在程序的一次运行当中循环执行所有的功能,并根据需要终止程序的执行。每一个选手记录都包含序号、成绩,以及名次,在程序当中,将每个选手的成绩保存在数组a【】中,下标表示选手的编号。将名次保存在b【】中,同样以下标表示其编号。在输出,保存操作时只需按顺序输出即可。由于每个选手的信息种类不多,所以没有采用结构体的方法。二、程序流程图1、程序总体结构图13沈阳航院设计用纸添加数据输入值123排序函数保存456输出清屏版本信息退出真真真真真假假假假假图1程序总体结构图2

6、、具体功能框图(1)添加数据函数PrintName()(2)排序函数PrintNum()13沈阳航院设计用纸(3)保存(4)输出函数(5)清屏(6)版本信息三、核心技术的实现说明及相应程序段13沈阳航院设计用纸本程序主要由六个自定义函数和一个主函数组成,其中主函数以菜单的形式调用其它函数来实现要求的所有功能。在这些函数当中,添加数据函数、删除数据函数和排序函数是程序中较为核心的部分,下面分别进行说明。1、添加数据函数PrintName()由于在比赛中选手的出场顺序有可能随时法身变化,与其序号不一致。因此在输入成绩

7、时选择了先输入序号再输入对应选手的成绩的方法,虽然这样输入速度会受影响。但考虑到比赛中实际情况,可以接受。在调试时可以先将试验数据存入a[]中,分步,分区检测。显示了程序模块化的优点。简单实用。具体的程序段如下:voidPrintName()/////////////数据输入1{puts("请输入选手序号");scanf("%d",&n);puts("请输入选手成绩");scanf("%d",&a[n]);}2、排序函数PrintNum()该函数的核心内容是排序算法以及最终使排序连续。该函数执行时,首先从1号开始

8、,13沈阳航院设计用纸比较得分比自己大的成绩。并作累加。由此确定自己的大概名次。但由于并列成绩的存在,使得名次不连续。因此引入数组c[],将b[]中的名次复制。成为一串只考虑其大小的数字。然后判断其是否连续,将不连续的地方以后的依次减去1,如此循环。直到结束。具体程序段如下:voidPrintNum()//选手排名,并把名次保存在b[]中2{intk,t,j,m=1;in

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。