**如下:
#include#includetypedef char elemtype;執行結果:typedef struct qnode
qnode , *queueptr;
typedef struct
linkqueue;
/////////////////////////////////
//建立乙個佇列
void initqueue(linkqueue *q)
q->front->next = null;
}///////////////////////////////////
//入佇列操作
void enqueue(linkqueue *q , elemtype e)
p->date = e;
p->next = null;
q->rear->next = p;
q->rear = p;
}////////////////////////////////////
//出佇列操作
void dequeue(linkqueue *q , elemtype *e)
queueptr p = q->front->next;
*e = p->date;
q->front->next = p->next;
if (q->rear == p)
free(p);
}/////////////////////////////////////
//銷毀乙個佇列
void destoryqueue(linkqueue *q)
}///////////////////////////////////////
//計算佇列長度
int lenqueue(linkqueue *q)
return i;
}int main()
}printf("正在列印字串:");
queueptr p = q.front->next;
for (int i = 0; i < lenqueue(&q); i++)
putchar('\n');
printf("正在銷毀佇列...");
destoryqueue(&q);
printf("銷毀成功!");
return 0;
}
資料結構C語言實現 清空 銷毀乙個棧
如下 include includetypedef struct sqstack 建立乙個棧 define stack size 100 void initstack sqstack stack stack top stack base stack stacksize stack size 入棧操作...
資料結構 用C語言實現乙個佇列
只允許在一端進行插入資料操作,在另一端進行刪除資料操作的特殊線性表。佇列具有先進先出fifo first in first out 入佇列 進行插入操作的一端稱為隊尾。出佇列 進行刪除操作的一端稱為隊頭。佇列可以以鍊錶和陣列的結構實現,使用鍊錶的結構更具有優勢,因為使用陣列的結構,在出佇列的時候效率...
資料結構C語言實現 銷毀鍊錶
1.首先,將 list 頭指標 賦值給p,這樣p也指向鍊錶的第乙個結點,成為鍊錶的表頭 2.然後判斷只要p不為空,就將p指向下乙個的指標賦值給q,再釋放掉p 3.之後再將q賦值給p,用來找到下一輪釋放掉的結點的下乙個結點 如下 include includetypedef struct node n...