5

    xiaoxiao2021-03-25  54

    

    int De_LQueue(LQueue &q,int &x)

    {

        Qnode *p;

        if(q.rear==q.front)

            return 0;

        p=q.front->next;

        x=p->data;

        q.front->next=p->next;

        if(q.front->next==NULL)

            q.rear=q.front;

        free(p);

        return 1;

    }

    void Display_LQueue(LQueue &q)

    {

        Qnode *p;

        p=q.front->next;

        while(p!=NULL)

        {

            printf("%d ",p->data);

            p=p->next;

        }

        printf("\n");

    }

    int main(int argc, char* argv[])

    {

        int i,x,y,cord;

        LQueue q;

        Init_LQueue(q);

        printf("初始化\n建立初始链队列如下: \n");

        for(i=1;i<=4;i++)

            En_LQueue(q,i);

            Display_LQueue(q);

            do

            {

                printf("           主菜单          \n");

                printf("     1     入队            \n");

                printf("     2     出队            \n");

                printf("     3     结束程序      \n");

                printf("------------------------------------------\n");

                printf("请输入您选择的菜单号<1, 2, 3>:");

                scanf("%d",&cord);

                switch(cord)

                {

                    case 1:

                    {

                        printf("请输入入队元素!");

                        scanf("%d",&y);

                        En_LQueue(q,y);

                        printf("该元素入队后得到的新队列如下: ");

                        Display_LQueue(q);

                    }break;

                    case 2:

                    {

                        if(De_LQueue(q,x)==0)

                            printf("队空,不能出队!\n");

                        else

                        {

                            printf("出队元素为: %d\n",x);

                            printf("出队后得到的新队列如下: ");

                            Display_LQueue(q);

                        }

                    }break;

                    case 3:

                    {

                        exit(0);

                    }break;

                    default:printf("输入有误!");

                }

            }while(cord<=3);

    }

    转载请注明原文地址: https://ju.6miu.com/read-40075.html

    最新回复(0)