欢迎来到天天文库
浏览记录
ID:38754185
大小:26.50 KB
页数:3页
时间:2019-06-18
《舞伴配对代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、#include#includestructdatatype{charname[20];charsex;};typedefstructperson{datatypedata;structperson*next;}node;typedefstruct{node*front,*rear;intcount;}linkqueue;linkqueue*initqueue(){linkqueue*q;q=(linkqueue*)malloc(sizeof(linkqueue));q->front=(node*)
2、malloc(sizeof(node));q->front->next=NULL;q->rear=q->front;q->count=NULL;returnq;}intqueueempty(linkqueue*q){return(q->front==q->rear);}voidenqueue(linkqueue*q,datatypep){q->rear->next=(node*)malloc(sizeof(node));q->rear=q->rear->next;q->rear->data=p;q->rear->next=NULL;q-
3、>count++;}datatypedequeue(linkqueue*q){node*s;datatypep;while(!queueempty(q)){s=q->front->next;p=s->data;if(s==q->rear)q->front=q->rear;q->front->next=s->next;free(s);q->count--;returnp;}}datatypequeuefront(linkqueue*q){if(queueempty(q)){printf("thequeueisempty");}else{r
4、eturn(q->front->next->data);}}voiddancepartners(){inti;datatypep;linkqueue*m,*f;m=initqueue();f=initqueue();do{scanf("%s%c",&p.name,&p.sex);if(p.sex=='f')enqueue(f,p);elseif(p.sex=='m')enqueue(m,p);elseif(p.name[0]!='#')printf("性别信息错误");}while(p.name[0]!='#');while(!queu
5、eempty(f)&&!queueempty(m)){p=dequeue(m);printf("配对情况如下:男:%s",p.name);p=dequeue(f);printf("&&女:%s",p.name);}if(!queueempty(f)){printf("女队中还有%d个人在等待!",f->count);p=queuefront(f);printf("女队中第一个等待的是:%s",p.name);}elseif(!queueempty(m)){printf("男队中还有%d个人在等待!",m->count);
6、p=queuefront(m);printf("男队中第一个等待的是:%s",p.name);}elseprintf("^-^没有人剩余^-^");}main(){inti,n;printf("输入姓名和性别,如:zhangsanm以##结尾");dancepartners();getchar();}
此文档下载收益归作者所有