C语言循环队列初始化:实现 InitCirQueue() 函数
#include<stdio.h>
#include<malloc.h>
typedef int DataType;
//循环队列的最大容量
#define MAXSIZE 5
//定义队列的结构体
typedef struct {
DataType data[MAXSIZE];
int front, rear;
}CirQueue;
/* 初始化空队列:InitCirQueue()
初始条件:循环队列不存在。
操作结果:构造一个空队列。 /
CirQueue InitCirQueue()
{
// 请在这里补充代码,完成本关任务
/******** Begin /
CirQueue Q = (CirQueue)malloc(sizeof(CirQueue));
if (Q == NULL) {
printf("内存分配失败!\n");
return NULL;
}
Q->front = Q->rear = 0;
return Q;
/* End **********/
}
/* 输出循环队列:OutputCirQueue(Q)
初始条件:循环队列存在。
操作结果:输出循环队列中的所有数据。 */
void OutputCirQueue(CirQueue *Q)
{
int i;
if(Q->rear==Q->front)
printf("当前队列为空!\n");
else
{
printf("当前队列元素有:Front->");
for(i=Q->front;i
int main(){ CirQueue *Q=NULL; Q=InitCirQueue(); if(Q==NULL) printf("初始化循环队列失败!\n"); else { printf("初始化循环队列成功!\n"); OutputCirQueue(Q); } return 0; }
原文地址: http://www.cveoy.top/t/topic/z6C 著作权归作者所有。请勿转载和采集!