分享
分销 收藏 举报 申诉 / 21
播放页_导航下方通栏广告

类型大奖赛评分系统C语言课程设计.doc

  • 上传人:w****g
  • 文档编号:3584171
  • 上传时间:2024-07-10
  • 格式:DOC
  • 页数:21
  • 大小:226.50KB
  • 下载积分:8 金币
  • 播放页_非在线预览资源立即下载上方广告
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    大奖赛 评分 系统 语言 课程设计
    资源描述:
    大奖赛评分系统C语言课程设计 21 2020年4月19日 文档仅供参考,不当之处,请联系改正。 学号 武汉理工大学华夏学院 课 程 设 计 课程名称 C语言课程设计 题 目 比赛评分系统的设计 专 业 软件工程 班 级 软件1121班 姓 名 成 绩 _________________ 指导教师 王绪梅 2月25日至 3月1 日 课程设计任务书 学生姓名: 专业班级: 软件1121 指导教师: 王绪梅 工作单位: 信息工程系 设计题目: 比赛评分系统的设计 要求完成的主要任务: 1. 任务描述 学校要举办一个歌咏比赛,请设计一个比赛评分程序,对参赛的选手进行评分。(给分的原则为:满分为10分;计分方法是:裁判给出分数后,去掉两个最高分和两个最低分后的平均分为选手的最后得分(精确到小数点后两位).) 要求系统实现以下功能: ⑴ 设参赛人数为n位(n<50),裁判人数为m(m为不少于11的奇数)位; ⑵ 系统能录入参赛人员资料;参赛选手按序号依次比赛,统计最后得分; ⑶ 能够查阅选手的得分情况; ⑷ 比赛结束后,显示出“名次表”; ⑸ 公布一、二、三等奖的得奖选手名单。 2. 本课程涉及的知识点 变量的定义、输入和输出函数、数组的应用、循环语句、选择语句等等。 3. 要求完成的任务 ⑴ 完成整个规定任务的设计及调试,最后得出正确结果,并经教师检查及答辩; ⑵ 写出规范的课程设计报告,在设计思想描述时一定要画出程序算法流程图; ⑶ 课程设计结束后交设计说明书等文档和设计内容: ⑷ 从2月26日起,学生每天至少要到设计教室半天以上; 设计报告撰写格式要求: 设计报告的主要内容是详细写出在设计过程中所用到的主要技术或方法; 课程设计报告按通用格式书写,具体要求见资料:“课程设计说明书的书写内容与格式” 时间安排: 第一天: 学生先在实验室集中,由指导教师介绍课程设计的目的、布置任务后选题; 第二天-第四天:学生在实验室完成设计,经教师检查并回答提问,确认设计完成; 第五天: 教师在计算机上先检查设计报告、学生修改后打印提交 指 导 教 师 签 字: 2月 20日 系 主 任 签 字: 2月 23日 目 录 1.设计题目 5 2.开发环境 5 3. 开发工具 5 4.完成时间 5 5. 设计思想 5 6. 设计过程及设计步骤 6 7. 测试运行 6 8. 评价与修订 7 9. 设计体会 7 10. 参考文献 8 《比赛评分系统的设计》课程报告 1 设计题目 比赛评分系统的设计 2 开发环境 2.1硬件环境 微机系列,内存在1G以上 2.2软件环境 Microsoft Windows XP, Microsoft Windows 7; 3.开发工具 Visual C++6.0 4.完成时间 .2.25---- .3.1 5.设计思想 首先根据设计题目思考设计的要点,确定要做的事情,在网上翻阅了许多资料都过于复杂,最后我决定用类似for结构,switch结构一些简单的结构写出程序.然后根据思想画出程序框图,然后列出基本步骤完成程序,再运行测试,最后修改完善整个程序程序。 6.设计过程及设计步骤 6.1 算法设计 比赛评分系统的算法流程图如图6-1所示。 开始 输入选手数及裁判数m,n k=0 k++ k<=n? i=0 i++ i<=m? 输入评分a[i] sum=0 j=0 j++ j<=m? sum=sum+a[j] pj=(sum-a[1]-a[2]-a[m]-a[m-1])/(m-4) b[n]=pj A 是 是 是 否 否 否 A j=0 j++ j<=n? x=0,k=0 x++ x<=n? b[j]>b[x]? p=n-k p==1? k++ p=0 B p==2? p==3? 输出第一名 输出第二名 输出第三名 是 是 是 是 是 否 否 否 否 否 B v=0 v++ v<=50? j=0 j++ k=0 j<=n? x=0 x++ x<=n? b[j]>b[x]? p=n-k p==v? 输出该选手成绩 结束 是 是 是 k++ 是 是 否 否 否 否 图6-1 比赛评分系统的算法流程图 6.2比赛评分系统的设计步骤 1.宏定义符号常量N(选手数),M(评委数),P(评分选项数); 2.定义评委评分,选手得分的数组fen[50]; 3.用for循环嵌套经过评委数量与选手数量控制评分项的完整输入,再用scanf语句对应二维数组a[]使评分与选手结合,在k=N时跳出循环; 4.用冒泡法将评分按大小排序,接着去除二个最高分与二个最低分算出选手最终得分;部分程序如下: for(b=0;b<n;b++) { for(i=0;i<m;i++) { printf("请%d号裁判输入对%d号选手评分",i+1,b+1); scanf("%d",&fen[i]); } for(j=0;j<m;j++) for(x=j+1;x<m;x++) if(fen[j]<fen[x]) {zhong=fen[x]; fen[x]=fen[j]; fen[j]=zhong; } c++; sum=0; for(a=0;a<m;a++) sum=sum+fen[a]; pj=(sum-fen[0]-fen[1]-fen[m-2]-fen[m-1])/(m-4); he[c]=pj; printf("去掉2个最高分和2个最低分号%d选手的平均分为%f分\n",b+1,pj); } 5.用一个for循环经过x控制姓名数量,经过scanf函数实现选手姓名的录入,在x<n是跳出循环;部分程序如下: for(v=1;v<50;v++) { for(j=1;j<=n;j++) {k=0; for(x=1;x<=n;x++) if(he[j]>he[x]) k++; p=n-k; if(p==v) {printf(" 第%d号选手获得第%d名成绩为%f\n",j,p,he[j]);break;} } } 6.用printf函数和for循环将最后的比赛名次与获奖选手姓名一一对应的完整输出; 7.程序调试 1.第一次运行程序时,发现人数设定不符合题目要求,重新修改后运行结果良好; 图7-1 输入数据的运行截图 第二次运行程序成功后,发现奖项设置不符合实际情况,返回程序做出修改后运行结果良好; 图7-2 运行结果截图 8.遇到的问题及不足 8.1评价 1.程序没用复杂的结构,具有简洁性; 2.程序不够贴合实际,还需做出更进一步的设计; 3.程序设计的能力还需加强; 4.没有使用文件系统,程序中信息无法长期保存和连续使用; 8.2修订 1.对程序中的人数和奖项设定做了修改,形成动态改变,使之更具有通用性; 2.对程序中的评分精确度做出了改正,使之保留得分的小数点后2-3位; 3.程序不能够做到灵活可变,但试着改进后发现不成功; 4.应在程序中加入数据文件的应用。 10.参考文献 [1] 谭浩强•C语言程序设计教程•北京:清华大学出版社, 5月 [2] 王路明•C语言程序设计教程•北京:北京邮电大学出版社, 5月 [3] 谭浩强·C++程序设计·北京:清华大学出版社· 11. 实训体会 经过这次实训也让我们同学之间的关系更加融洽。在制作作品的过程中我深深感受到了同学们互帮互助的融洽学习氛围。每当遇到困难时我身边的同学都会很热心的过来提供帮助。正是因为她们帮我解决了一个又一个的困难。我的作品才能够得以完成。经过这次实训我深刻体会到了同学之情的珍贵。我相信在今后的日子里一定会加倍的珍惜这份情谊。 这次实训还让我体会到了成功的喜悦。当经过努力把那些作品完成的时候,那种成就感,我想只有设计者本人能够体会。有了这次经历我相信我以后一定会认真的对待每个任务,争取把每件事情都做到最好。 这次的实训真真是苦不堪言啊,看着选好的题目,比赛评分系统的设计应该还算比较简单的了,但苦苦思索就是无法动手开编,那种完全没有头绪的感觉,直叫人为当初没有学好专业知识而叫苦不迭,可还是要将实训进行下去,只好依靠互联网的神奇力量找了一份参考,做出修改和设定后就算是完成了,运行成功后再次作了修改。 虽然报告是勉强过关了,但我能感觉到的是经过这次的实训,我们除了抗压能力隐忍能力耍小聪明的能力强了那么一丁点而已,这次的实训让我们真真领会了学习的严谨性和学好专业知识的重要性,现在的我们明白了掌握专业知识的必要性,因此更加迫切的需要黄老师带领我们去学习真正的专业技能,更加真实的希望以后的实训更加有长进了。 设计过程中现场提问(或答辩)记载: 1.问:对于选手和评委的人数设定是否符和要求? 答:是严格按照题目要求来做的,选手,评委都是可输入的。 2. 问:对于各奖项人数的设定是否符合实际情况? 答:一等奖设定的是1名,二等奖设定的是2名,三等奖设定的是3名,还算符合实际。 3. 问:一等奖的选手得分仿佛过于精确了,小数点后的位数是否能够减少几位? 答:是修改的时候没有改到的地方,在输出时%f改为%.2f即可解决。 指导教师评语: 成绩评定等级: 指导教师(签名): 年 2 月 17 日 附录:源程序代码 比赛评分系统的设计程序 #include<stdio.h> main() { int n,m,b,s,i,j,x,a,fen[50],c=0,k=0,p,v,d,e,g; double f,zhong=0,sum=0,pj,he[51]; printf("请输入比赛选手人数n以及裁判人数m中间以逗号隔开:"); scanf("%d,%d",&n,&m); for(b=0;b<n;b++) { for(i=0;i<m;i++) { printf("请%d号裁判输入对%d号选手评分",i+1,b+1); scanf("%d",&fen[i]); } for(j=0;j<m;j++) for(x=j+1;x<m;x++) if(fen[j]<fen[x]) {zhong=fen[x]; fen[x]=fen[j]; fen[j]=zhong; } c++; sum=0; for(a=0;a<m;a++) sum=sum+fen[a]; pj=(sum-fen[0]-fen[1]-fen[m-2]-fen[m-1])/(m-4); he[c]=pj; printf("去掉2个最高分和2个最低分号%d选手的平均分为%f分\n",b+1,pj); } printf("\n *******获奖名单******\n"); for(j=1;j<=n;j++) { k=0; for(x=1;x<=n;x++) if(he[j]>he[x]) k++; p=n-k; if(p==1) printf(" 第%d名选手获得一等奖\n",j); if(p==2) printf(" 第%d名选手获得二等奖\n",j); if(p==3) printf(" 第%d名选手获得三等奖\n",j); } p=0; printf("\n *******成绩表*******\n"); for(v=1;v<50;v++) { for(j=1;j<=n;j++) {k=0; for(x=1;x<=n;x++) if(he[j]>he[x]) k++; p=n-k; if(p==v) {printf(" 第%d号选手获得第%d名成绩为%f\n",j,p,he[j]);break;} } } for(g=1;g==1;) {printf("\n是否继续查询选手成绩?1.是 2.否\n"); scanf("%d",&e); switch(e) {case 1: printf("输入选手序号查询成绩:"); scanf("%d",&d); printf("该选手的最终成绩为%f分",he[d]); break; case 2: g=0;break; default:printf("输入有误!");break; } } }
    展开阅读全文
    提示  咨信网温馨提示:
    1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
    2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
    3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
    4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
    5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
    6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

    开通VIP折扣优惠下载文档

    自信AI创作助手
    关于本文
    本文标题:大奖赛评分系统C语言课程设计.doc
    链接地址:https://www.zixin.com.cn/doc/3584171.html
    页脚通栏广告

    Copyright ©2010-2026   All Rights Reserved  宁波自信网络信息技术有限公司 版权所有   |  客服电话:0574-28810668    微信客服:咨信网客服    投诉电话:18658249818   

    违法和不良信息举报邮箱:help@zixin.com.cn    文档合作和网站合作邮箱:fuwu@zixin.com.cn    意见反馈和侵权处理邮箱:1219186828@qq.com   | 证照中心

    12321jubao.png12321网络举报中心 电话:010-12321  jubao.png中国互联网举报中心 电话:12377   gongan.png浙公网安备33021202000488号  icp.png浙ICP备2021020529号-1 浙B2-20240490   


    关注我们 :微信公众号  抖音  微博  LOFTER               

    自信网络  |  ZixinNetwork