);//释放PР?return 1;Р}Рvoid main()Р{Р?int m, n, k;Р?printf("请输入队M队员数量:");Р?scanf("%d",&m);Р?printf("请输入队N队员数量:");Р?scanf("%d", &n);Р?printf("请输入需要比赛的轮数K:");Р?scanf("%d", &k);Р?//接受MNKР?LinkQueue *M, *N;Р?M = (QueuePtr)malloc(sizeof(QNode));Р?N = (QueuePtr)malloc(sizeof(QNode));Р?//给M队输入一个队列Р?InitQueue(M); //初始化队列MР?int i;Р?for (i = 1; i <= m; i++)Р?{Р EnQueue(M,i);Р?}Р?//给N队输入一个队列Р?InitQueue(N);Р?for (i = 1; i <= n; i++)Р?{Р EnQueue(N, i);Р?}Р?int *a, *b,c=1,d=1;Р?a = &d; b = &c;Р?for (i = 1; i<=(m*k/2+1);i++)Р?{Р DeQueue(M, a); //队列M中元素先出队列Р DeQueue(N, b); //队列N中元素先出队列Р printf("m%d & f%d VS ", *a, *b);Р EnQueue(M, *a); //出队后再入队实现多轮循环Р EnQueue(N, *b);Р DeQueue(M, a); //实现两次两队元素出队匹配Р DeQueue(N, b);Р printf("m%d & f%d", *a, *b);Р EnQueue(M, *a);Р EnQueue(N, *b);Р printf("\n");Р?}Р?getchar();Р}