问答题

试题三(共15分) 阅读以下说明和C函数,填补函数代码中的空缺(1)~(5),将解答填入答题纸的对应栏内。 [说明] 队列是一种常用的数据结构,其特点是先入先出,即元素的插入在表头、删除在表尾进行。下面采用顺序存储方式实现队列,即利用一组地址连续的存储单元存放队列元素,同时通过模运算将存储空间看作一个环状结构(称为循环队列)。 设循环队列的存储空间容量为MAXQSIZE,并在其类型定义中设置base、rear和length三个域变量,其中,base为队列空间的首地址,rear为队尾元素的指针,length表示队列的长度。

例如,容量为8的循环队列如图3-1所示,初始时创建的空队列如图3-1(a)所示经过一系列的入队、出队操作后,队列的状态如图3-1(b)所示(队列长度为3)。
下面的C函数1、C函数2和C函数3用于实现队列的创建、插入和删除操作,请完善这些代码。 [C函数1]创建一个空的循环队列。
[C函数2]元素插入循环队列。
[C函数3]元素出循环队列。

【参考答案】

(1)sizeof(QElemType) (2)(Q->rear+1)%MAXQSIZE或等价表示 (3)Q......

(↓↓↓ 点击下方‘点击查看答案’看完整答案、解析 ↓↓↓)