2103103021 王如强 科院212-21 #include<stdio.h> #include<stdlib.h> typedef struct Duilie { int* pBase; int front; int rear; }Duilie; void init(Duilie* pQ)//初始化 { pQ->pBase = (int*)malloc(sizeof(int) * 6);//分配数组空间 pQ->front = 0; pQ->rear = 0; } bool full_dl(Duilie* pQ)//队满 { if ((pQ->rear + 1) % 6 == pQ->front) return true; else return false; } bool enter_dl(Duilie* pQ, int val)//入列 { if (full_dl(pQ)) return false; else { pQ->pBase[pQ->rear] = val;//新元素加入队尾 pQ->rear = (pQ->rear + 1) % 6;//队尾指针+1 return true; } } bool empty_dl(Duilie* pQ)//队空 { if (pQ->front == pQ->rear) return true; else return false; } void traverse_dl(Duilie* pQ)//遍历输出 { int i = pQ->front; while (i != pQ->rear) { printf("%d", pQ->pBase[i]); i = (i + 1) % 6; } printf("\n"); return; } bool out_dl(Duilie* pQ, int* pval)//出列 { if
循环队列输入输出
于 2022-12-09 21:32:37 首次发布