//不帶頭節點只有尾節點的回圈單鏈表存盤佇列
#include <stdio.h>
#include <stdlib.h>
#define OK 1
#define ERROR 0
typedef int elemtype;
typedef struct qnode{
elemtype data;
struct qnode *next;
}Qnode;
void Create(Qnode *rear){
// Qnode *rear;
// rear=(Qnode*)malloc(sizeof(Qnode));
rear=NULL;
// return rear;
}
void enQuene(Qnode *rear,elemtype e){
Qnode *q;
q=(Qnode*)malloc(sizeof(Qnode));
q->data=https://bbs.csdn.net/topics/e;
if(rear==NULL){ //構成回圈鏈表
q->next=q;
rear=q;
}
else{
q->next=rear->next;
rear->next=q;
rear=q;
}
}
elemtype deQuene(Qnode *rear){
Qnode *q;elemtype e;
q=rear->next->next->next->next;
e=q->data;
rear->next=q->next;
free(q);
return e;
}
int empty(Qnode *rear){
return (rear==NULL);
}
void main(){
Qnode rear;int N,i;elemtype e;
printf("please enter number:\n");
scanf("%d",&N);
if(N<0) printf("ERROR!");
else{
Create(&rear);
for(i=0;i<N;i++){
printf("請輸入第%d個數:\n",i+1);
scanf("%d",&e);
enQuene(&rear,e);
}
// if(empty(rear)) printf("佇列為空!");
// else printf("佇列不為空!");
for(i=0;i<N;i++){
printf("%d ",deQuene(&rear));
}
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/67772.html
標籤:C語言
下一篇:c語言精選32題
