计算机科学与技术系
实验报告
专业名称课程名称项目名称班级学号姓名同组人员实验日期
计算机科学与技术数据结构与算法实验三队列实验
1
无
f实验三队列实验
实验题目:建立含有若干个元素的循环队列和链队列,并分别实现循环队列和
链队列的入队和出对操作。(1)先实现循环队列的入队和出队操作
1问题分析
本程序要求实现建立含有若干个元素的循环队列,并实现循环队列的入队和出队操作。
完成该实验需要以下4个子任务:
○1定义一个循环队列的存储结构,定义队列的基本算法。
○2定义一个display()函数实现队列元素的输出看入队是否成功
○3通过队列的基本算法实现队列的出队操作
○4在主函数中完成操作
测试数据设计如下:123456
2概要设计
为了实现上述程序功能,需要:○1声明一个循环队列○2定义出队列的基本算
法,○3通过键盘输入5个整数,入队,出队○4在主函数中先往队列里输入5个元素,然后入队,输出,看入队是否成功,然后出队,再调用display()函数看是否出队。1)本程序包含7个函数:
1主函数mai
2置空队:I
itQueue3判对空QueueEmpty4判队满:QueueFull5入队Add6出队Delete7display
各函数关系如下:
fMai
I
itQueueQueueEmptyQueueFullAddMai
Deletedisplay
3、详细设计
实现概要设计中定义的所有的数据类型,对每个操作给出了算法和代码,主程序和模块都需要代码。
(1)循环队列defi
emaxle
10typedefstructi
tdatamaxle
i
tfro
ti
trearSeqQueue
2队列基本算法SeqQueueI
itQueueSeqQueueqqSeqQueuemallocsizeofSeqQueueqfro
t0qrear0retur
q
建立一个空循环队列
i
tQueueFullSeqQueueqifqfro
tqrear1maxle
retur
1elseretur
0
判断队列是否为满
i
tQueueEmptySeqQueueqifqrearqfro
t
判断队列是否为空
fretur
1elseretur
0
voidAddSeqQueueqi
tx
ifQueueFullqqrearqrear1maxle
qdataqrearx
elsepri
tf