版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、授课题目队列的应用一一舞伴配对问题授课类型实验课首次授课时间2021年9月30日学时2教学目标1 .掌握队列的类型定义方法;2 .理解和掌握循环队列解决假溢出的方法,并能灵活运用队列知识对现实生活中的实际问题提出解决方案.重点与难点循环队列判断队满和队空的条件以及循环队列的应用教学手段与方法上机编程、调试并进行验证教学过程:包括授课思路、过程设计、讲解要点及各局部具体内容、时间分配等实验内容:利用循环队列模拟舞伴配对问题:在舞会上,男、女各自排成一队.舞会开始时.依次从男队和女队的队头各出一人配成舞伴.如果两队初始人数不等,那么较长的那一队中未配对者等待下一轮舞曲.要求:a.假设初始男、女人数
2、及性别已经固定,舞会的轮数从键盘输入,试模拟解决上述舞伴配对问题.b.从屏幕输出每一轮舞伴配对名单,如果在该轮有未配对的,能够从屏幕显示下一轮第一个出场的未配对者的姓名.编程思路:首先建立循环队列的存储结构,为了区分男女队,需要设置两个循环队列,队列中元素的数据类型分别为字符型和整型,然后设计如下函数:ManQueue(Q)和WomanQueue(Q)(建立男人和女人队列)以及PeiDui(Q1,Q2)(舞伴配对),程序描述如下:#include<stdio.h>#include<stdlib.h>#defineMAXQSIZE50typedefstructchar*b
3、ase;intfront;intrear;ManQueue;typedefstructint*base;intfront;intrear;WomanQueue;voidInitManQueue(ManQueue&M,intm)(M.base=(char*)malloc(MAXQSIZE*sizeof(char);if(!M.base)exit(0);M.front=M.rear=0;inti;printf("请输入外不同的字母代表扑不同的男生姓名n",m,m);for(i=0;i<m;i+)(scanf("%c,&M.basei);getch
4、ar();M.rear=i;if(M.rear+1)%MAXQSIZE=M.front)exit(0);voidInitWomanQueue(WomanQueue&W,intw)W.base=(int*)malloc(MAXQSIZE*sizeof(int);if(!W.base)exit(0);W.front=W.rear=0;inti;printf("请输入外不同的数字代表扑不同的女生姓名n",w,w);for(i=0;i<w;i+)scanf("%d,&W.basei);getchar();W.rear=i;if(W.rear+1)%M
5、AXQSIZE=W.front)exit(0);voidPeiDui(ManQueue&M,WomanQueue&W,intm,intw,intx)inti;if(m<w)for(i=1;i<=x;i+)printf"第晚中男女配对名单如下:n",i;M.front=0;while(M.front<M.rear)(if(W.front=W.rear)W.front=0;printf("%c与dn",M.baseM.front,W.baseW.front);M.front+;W.front+;if(W.front=W.re
6、ar)W.front=0;printf("下轮中第一个出场未配对者是:%dn",W.baseW.front);elsefor(i=1;i<=x;i+)(printf("第晚中男女配对名单如下:n",i);W.front=0;while(W.front<W.rear)(if(M.front=M.rear)M.front=0;printf("%c与dn",M.baseM.front,W.baseW.front);M.front+;W.front+;)if(M.front=M.rear)M.front=0;printf(&quo
7、t;下轮中第一个出场未配对者是:%cn",M.baseM.front);)voidmain()ManQueueM;WomanQueueW;intw,m,x;printf("请分别输入男生和女生人数m和w的值n");scanf("%d%d",&m,&w);/注意输入数据完后把回车符赋值给getchar,预防在接下的/输入中出现错误的赋值!getchar();InitManQueue(M,m);InitWomanQueue(W,w);printf("请输入要舞蹈的轮数x的值n");scanf("%d",&x);PeiDui(M,W,m,w,x);那么运行结果如下图:SJfAFrogramFilesMicrosoftVisual5tudioM-JOX请分别输入男生和女生人数描加的值请输入2个不同的字母代表2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 永磁同步电机的课程设计
- 企业建筑施工安全生产管理制度汇编
- 中国石化安全风险评估指导意见
- 部编版八年级《道德与法治》上册同步练习(全册,含答案)
- 系统文件监控课程设计
- 网红饮料制作课程设计
- 股市基金课程设计
- 娱乐场所行业营业员工作总结
- 银行工作总结质量管理发展稳定
- 采矿行业员工激励总结
- 2024年加油站的年度工作总结范文(2篇)
- 甲醇制氢生产装置计算书
- T-JSREA 32-2024 电化学储能电站消防验收规范
- 2025年上半年江苏省常州市文广旅局下属事业单位招聘4人重点基础提升(共500题)附带答案详解
- 2023-2024学年福建省泉州市石狮市三年级(上)期末数学试卷
- 新时代高校马克思主义学院内涵式发展的现状和现实进路
- 铜工岗位安全操作规程(2篇)
- 擦玻璃安全责任合同协议书范本
- 【MOOC】隧道工程-中南大学 中国大学慕课MOOC答案
- 红色经典影片与近现代中国发展学习通超星期末考试答案章节答案2024年
- 剧作策划与管理智慧树知到期末考试答案2024年
评论
0/150
提交评论