队列的应用舞伴配对问题Word文档格式.doc

上传人:b****2 文档编号:14569727 上传时间:2022-10-23 格式:DOC 页数:5 大小:63KB
下载 相关 举报
队列的应用舞伴配对问题Word文档格式.doc_第1页
第1页 / 共5页
队列的应用舞伴配对问题Word文档格式.doc_第2页
第2页 / 共5页
队列的应用舞伴配对问题Word文档格式.doc_第3页
第3页 / 共5页
队列的应用舞伴配对问题Word文档格式.doc_第4页
第4页 / 共5页
队列的应用舞伴配对问题Word文档格式.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

队列的应用舞伴配对问题Word文档格式.doc

《队列的应用舞伴配对问题Word文档格式.doc》由会员分享,可在线阅读,更多相关《队列的应用舞伴配对问题Word文档格式.doc(5页珍藏版)》请在冰豆网上搜索。

队列的应用舞伴配对问题Word文档格式.doc

依次从男队和女队的队头各出一人配成舞伴。

如果两队初始人数不等,则较长的那一队中未配对者等待下一轮舞曲。

b.假设初始男、女人数及性别已经固定,舞会的轮数从键盘输入。

试模拟解决上述舞伴配对问题。

要求:

从屏幕输出每一轮舞伴配对名单,如果在该轮有未配对的,能够从屏幕显示下一轮第一个出场的未配对者的姓名。

实验步骤:

#include<

stdio.h>

string.h>

stdlib.h>

typedefstructQNode

{

charname[10];

structQNode*next;

}QNode,*QueuePtr;

typedefstruct

QueuePtrfront;

QueuePtrrear;

}LinkQueue;

voidInitQueue(LinkQueue&

Q)

{//构建一个空队列

Q.front=Q.rear=(QueuePtr)malloc(sizeof(QNode));

if(!

Q.front)

exit(0);

Q.front->

next=Q.front;

}//InitQueue

voidEnQueue(LinkQueue&

Q,char*str)

{//将字符串入队

QueuePtrp;

p=(QueuePtr)malloc(sizeof(QNode));

p)

strcpy(p->

name,str);

p->

next=NULL;

Q.rear->

next=p;

Q.rear=p;

}

voidDeQueue(LinkQueue&

{//将结点删除后连接到队列的后方

p=Q.front->

next;

strcpy(str,p->

name);

next=p->

if(Q.rear==p)

Q.rear=Q.front;

free(p);

voidGetHead(LinkQueueQ,char*str)

{//若队列非空,取队头元素

if(Q.front!

=Q.rear)

{

p=Q.front->

strcpy(str,p->

}

voidDancer(LinkQueue&

Q1,LinkQueue&

Q2)

{//实现配对,输出配对人名单,打印下一轮等待的人名

charstr[15],boy[15],girl[15],ch;

intb,g,i,k,ls,j;

printf("

请输入男舞伴的人数:

\n"

);

scanf("

%d"

&

b);

ch=getchar();

请输入男舞伴的名字:

for(i=0;

i<

b;

i++)

gets(str);

EnQueue(Q1,str);

printf("

请输入女舞伴的人数:

g);

请输入女舞伴的名字:

g;

EnQueue(Q2,str);

请输入舞会的轮数:

ls);

if(b<

g)

k=b;

else

k=g;

ls;

printf("

第%d轮数配对如下:

i+1);

for(j=0;

j<

k;

j++)

{

DeQueue(Q1,boy);

DeQueue(Q2,girl);

printf("

%s<

---->

%s\n"

boy,girl);

EnQueue(Q1,boy);

EnQueue(Q2,girl);

}

if(b<

GetHead(Q2,str);

%s在等待\n"

str);

else

GetHead(Q1,str);

printf("

voidmain()

LinkQueueQ1,Q2;

InitQueue(Q1);

InitQueue(Q2);

Dancer(Q1,Q2);

实验运行结果

教师批阅评语:

成绩评定

教师签名:

年月日

优秀

良好

中等

及格

不及格

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 小学作文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1