歌手比赛评分系统程序设计.docx

  1. 1、本文档共31页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
计通学院 课程设计报告 课程名称 ___高级程序设计语言 __ 题目名称 ___歌唱比赛评分系统 _ __ 学生学院 _ 计通学院 专业班级 _ 软件 181 _ 学号 学生姓名 指导教师 __ 2019 年 1 月 7 号 目录 1. 设计目的与要求 ???????????????? 3 TOC \o 1-5 \h \z 题目与设计要求?????????????? 3 本程序涉及的知识点???????????? 3 功能设计?????????????????? 3 总体设计????????????????? 3 详细设计????????????????? 4 程序实现????????????????? 27 程序实现时应考虑的问题?????????? 27 XX 模块核心代码????????????? 27 测试分析 ????????????????? 32 测试结果及分析????????????? 32 总结??????????????????? 35 参考文献?????????????????? 35 设计目的与要求 题目与设计要求 题目:歌手比赛评分系统 设计要求: 有十个选手参加歌唱比赛, 十个裁判对每个选手的演唱进行打分, 去 掉一个最高分,去掉一个最低分,剩下分数的平均值作为每位选手最后的成绩。 功能要求: (1)采用结构体定义每个选手的参赛编号,姓名以及十个裁判打出的分数; (2)从键盘输入每个选手的相关信息:参赛编号,姓名和十个得分; (3)计算每位选手的最后得分,并按分数由高到低排序; ( 4)查询功能:输入参赛选手的编号或姓名, 便可输出该选手的得分以及排名; 以上功能采用菜单操作方式, 即从键盘输入 1 到 3 这三个数,分别完成以上(2) 到( 4)的功能。 本程序设计的知识点 结构体、数组、指针、文件操作。 功能设计 总体设计 ○1 选手信息浏览,○2 选手信息录入,○3 选手信息保存,○4 选手成绩查询,○5 选手 信息修改,○6 选手信息删除,○7 选手数据:编号、姓名、成绩、平均成绩 详细设计 ○1 浏览选手数据 browse() 分析:实际为链表的遍历,将头节点的指针给予临时节点 p1,用 while 语句实 现链表的遍历。 void browse() { SONGER_MESSAGE *p1; if(head==NULLtail==NULL) { printf(\n 当前信息记录为空 \n); } else { printf(\n 你要浏览的选手信息如下 \n); printf( | \n); printf( 编号 | 姓名 \n); p1=head; while(p1!=NULL) { printf( | \n); printf(%-9d%-6s\n,p1-num,p1-name); p1=p1-next; } printf( | \n); } } ○2 查询选手成绩 search() 分析:提供详细成绩查询, 排名查询的函数调用。 其中各功能均采用菜单选择的 方式。 void search() { int c; printf(\n 请选择查询内容: \n); printf(1. 选手详细成绩查询 2.选手排名查询 \n 请输入您的选择: ); scanf(%d,c); switch(c) { case1: system(cls); print(); break; case2: system(cls); rank(); break; } } ○3 查询选手信息 print() 分析:实际为输出链表中的某个节点,输出某个选手的编号与姓名较为好实现, 输出 10 位评委成绩则用的 for 语句来实现。 void print() { SONGER_MESSAGE *p1=(SONGER_MESSAGE *)malloc(LEN); int check=0,i; long seeknum; printf(\n 请输入要查找的选手编号: ); scanf(%d,seeknum); if(head==NULLtail==NULL ) { printf(\n 对不起,当前记录为空 !\n); } else { p1=head; printf(\n 你要找的选手的成绩如下 \n);// 在这里找到了要查找的 选手成绩 printf( | | | | | | | | | | | | | | \n); printf( 编号 | 姓名 | 成绩| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10平 | 均成绩 \n); printf( | | | | | | | | | | | | | | \n); while(p1 != NULL) { if(p1-nu

文档评论(0)

guoxiang + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档