代码如下:

/*****************************************

* 入队列操作

* 首先,创建一个单链表的结点

* 将这个结点挂在现在队伍的队尾后面

* 再将队尾指向这个节点

* ***************************************/

#include

#include

typedef struct QNode

{

char date;

struct QNode *next;

}QNode , *QueueP;

typedef struct

{

QueueP front;

QueueP rear;

}LinkQueue;

////////////////////////////////////////////

//创建一个队伍

void initQueue(LinkQueue *q)

{

q->front = q->rear = (QueueP)malloc(sizeof(QNode));

if (!q->front)

{

exit(0);

}

q->front->next = NULL;

}

////////////////////////////////////////////

//入队列操作

void EnterQueue(LinkQueue *q , char e)

{

QueueP New_node;

New_node = (QueueP)malloc(sizeof(QNode));//创建一个队列元素的结点

if (!q->front)

{

exit(0); //头结点创建失败

}

New_node->date = e;//给新队列元素赋值

New_node->next = NULL;//新队列元素在队伍最后,所以后面为NULL

q->rear->next = New_node;//让队列中原来的队尾指向这个插入的新元素

q->rear = New_node;//插入的新元素变为队尾

}

int main()

{

LinkQueue q;

initQueue(&q);

char e;

e = getchar();

EnterQueue(&q , e);

printf("入队列成功,正在打印队尾元素...\n队尾元素为:%c",q.rear->date);

return 0;

}

运行结果:

20200718215850162769.png

原文:https://www.cnblogs.com/jerryleesir/p/13336737.html

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐