1、只有一个入口,只有一个出口,入口用front表示,出口用rear表示,建立主函数,定义一个结构体变量。
2、初始化队列,创建一个长度为5的int型数组。
3、向队列中,增加元素,front 中增加一个元素,rear 向后移一位,建立循环队列。先判断队列是否为满。
4、如果队列未满,向队列中增加元素,增加5个元素输出如图。
5、判断队列是否为空,否则将队列中的元素输出。
6、输出时发现中间有误,最后更正如下,输出如图。
关键这是一个循环队列,r可能小于f,例如n为4时,元素个数有0、1、2、3,r可以为0,f为2,这样实际上有两个元素,但是以r-f得出来的是-2。
D答案在r大于f和r小于f时都适用。
在循环队列队首可能大于队尾
所以:r-f可能小于0
因此A不可以
n+r-f可以求出r-f小于0的情况
但在r-f>0时会大于n,所以最后要模n