#include struct queue { //定义一个队的结构体 放两个人手中的牌 int data[1000]; int head; int tail; }; struct stack { //定义一个栈 放桌子上的牌 int data[10]; int top; }; int main() { struct queue q1,q2; struct stack s; int book[10]; int i,t; //初始化队列 q1.head = 1; q2.head = 1; q1.tail = 1; q2.tail = 1; //初始化栈 s.top = 0; //标记初始化,标记桌子上那些牌 for(i=1; i<=9; i++) book[i]=0; //向队列q1中插入6张牌 //小哼手上的6张牌 for(i=1; i<=6; i++) { scanf("%d",&q1.data[q1.tail]); q1.tail++; } //向队列q2中插入6张牌 //小哈手上的6张牌 for(i=1; i<=6; i++) { scanf("%d",&q2.data[q2.tail]); q2.tail++; } //当队列不为空的时候执行循环 while(q1.tail>q1.head && q2.head0) { //如果桌子上有牌,则依次输出桌子上的牌 printf("\n桌子上的牌"); for(i=1; i<=s.top; i++) printf(" %d",s.data[i]); } else printf("\n桌子上没牌啦!!"); } else { printf("小哈 win\n"); printf("小哈当前手中的牌:"); for(i=q2.head; i<=q2.tail-1; i++) printf(" %d",q2.data[i]); if(s.top>0) { //如果桌面上有牌就依次输出桌面上的牌 printf("\n桌子上的牌"); for(i=1; i<=s.top; i++) printf(" %d",s.data[i]); } else printf("\n桌子上没牌啦!!"); } return 0; }