ImageVerifierCode 换一换
格式:DOCX , 页数:20 ,大小:54.92KB ,
资源ID:18735642      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/18735642.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(实验三队列实验报告docxWord格式文档下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

实验三队列实验报告docxWord格式文档下载.docx

1、4.判队满:QUeUeFUll()5.入队:AddO6.出队:DeIeteO7.display()各函数关系如下:Ini tQueue()QueueEmptyOQueueFuI1()Add()Ma inDeIete() display()3、详细设计实现概要设计中定义的所有的数据类型,对每个操作给出了算法和代码,主 程序和模块都需要代码。(1)循环队列#defi ne maxle n 10typedef StrUCtint data maxle n;int front; in t rear;SeqQueue;(2)队列基本算法SeqQUeUe *ln itQueue(SeqQueue *q)

2、/ 建立一个空循环队列q=(SeqQueue *)malloc(sizeof (SeqQueue);q-fro nt=0;rear=0;return q;int QueueFull (SeqQUeUe *q) / 判断队列是否为满if (q-fron t=(q-rear+1)%maxle n)return 1;else return 0;int QueueEmpty(SeqQueue *q)rear=q-front)void Add (SeqQueue *q,int x) /if(!QueueFull(q)rear=(q-rear+1)%maxlen; q-dataq-rear=x;else

3、printf (queue full);void Delete(SeqQueue *q) /if (!QueueEmpty(q) q-front=(q-front+1)%maxlen;else printf (queue Empty(3)用display()函数输出循环队列元素void display(SeqQueue *q)int i;if(q-front!=q-rear)printf( 输出循环队列元素: i=q-front;doi=(i+1)%maxlen;%d,q-datai); while(i!rear);else 队列为空!/ 判断队列是否为空入队出队/输出循环队列q的元素/循环队

4、列非空,输出队列元素(4)在主函数中先往队列里输入 5 个元素,输出,看入队是否成功,然后出队, 再调用 display ()函数看是否出队。int main()SeqQueue *q;/建立空循环队列/入队5个元素/输出循环队列元素/把5个元素出队/再入队一个元素/再输出循环队列元素int i,y;q=ln itQueue(q);Printf(请输入5个元素for(i=0;i5;i+)SCan f(, &y);Add(q,y); display(q); for(i=0;DeIete(q);n请输入1个元素 SCa nf(display(q); return 0;4、调试分析编译无错误5、用户

5、使用说明程序名为class1.exe ,在DEBUGt件夹里面。运行环境 ViSUaI C+ 6.0 。6、测试结果请输入吕个元素1 2 3 4 5i由循环罠列元素:12345请 l7E6输出循环队列元索:6Press any key to COntinUe7、附录#i nclude #in clude typedef structint data maxlen;int rear;SeqQueue *InitQueue(SeqQueue *q) / 建立一个空循环队列 front=0;int QueueFull (SeqQueue *q) / 判断队列是否为满front=(q-rear+1)%

6、maxlen) return 1;void Add (SeqQueue *q,int x)QueueFull(q) q-void Delete(SeqQueue *q)/ 入队/ 出队/ 输出循环队列 q 的元素/ 循环队列非空,输出队列元素 i=q- printf(while(i!q=InitQueue(q); 请输入 5 个元素 scanf(,&Delete(q);n 请输入 1 个元素 scanf( display(q);/ 建立空循环队列/ 入队 5 个元素/ 输出循环队列元素/ 把 5 个元素出队/ 再入队一个元素/ 再输出循环队列元素(2)实现链队列的入队和出队操作1.问题分析本程

7、序要求实现建立含有若干个元素的链队列,并实现链队列入队和出队操作完成该实验需要以下 4 个子任务:(1定义一个链队列的存储结构,定义链 队列的基本算法。14 在主函数中完成操作为了实现上述程序功能, 需要:11声明一个链队列 12定义出链队列的基本算法,13 通过键盘输入 5 个整数,入队,出队 14在主函数中先往队列里输入 5 个元 素,然后入队,输出,看入队是否成功,然后出队,再调用 display ()函 数看是否出队。2) 本程序包含 6 个函数:1主函数 main() InitQueue()3.判对空 : QueueEmpty()4.入队:Addo5.出队:DeIeteo6.disp

8、lay()SetQueue()Add()DeIete()display()4、详细设计(1)链队列typedef StrUCt no deint data;StrUCt node *n ext;Li nkList;Lin kList *fron t,*rear;Lin kQueue;Lin kQueue *q;Lin kQueue *SetQueue() / 建立一个空链队列q=(L in kQueue *)malloc(sizeof (Lin kQueue);fron t=(L in kList *)malloc(sizeof(L in kList);front-n ext=NULL;rea

9、r=q-fro nt;int QueueEmpty(LinkQueue *q) if (q-LinkQueue *Add (LinkQueue *q,int x)LinkList *p;p=(LinkList *)malloc(sizeof (LinkList);p-data=x;next=NULL;rear-next=p;rear=p;LinkQueue *Delete(LinkQueue *q)QueueEmpty(q) p=q-next;next=p- if(p-next=NULL)q- free(p);(3)用display()函数输出链队列元素 void display(LinkQu

10、eue *q)p=q-if(p!=NULL) 输出链队元素 while(p! printf(%2d,p-data); p=p-else printf(n 链队为空 / 输出链队列的元素然后出队,/建立空链队列/看是否出队成功(4)在主函数中先往队列里输入 5个元素,输出,看入队是否成功, 再调用display ()函数看是否出队。int i,y=O;SetQueue();display(q);n请输入5个元素return 0;4、 调试分析5、 用户使用说明程序名为class12exe ,在DEBUGt件夹里面。6、 测试结果链队为穹诸输入5个元索1 2 3 4 5输陆元壷1 2 3 4 5麓

11、队为Press any key to COntinlle#include LinkQueue *Add (LinkQueue *q,int x) / 入队 p=(LinkList *)malloc(sizeof (LinkList); p-LinkQueue *Delete(LinkQueue *q) / 出队void display(LinkQueue *q) while(p!int i,y=0;display(q) ;n 请输入 5 个元素 / 建立链队列/ 看是否出队成功实验题目2:写出下列程序段的输出结果,并通过程序运行来验证 1问题分析(定义一个循环队列的存储结构,定义队列的基本算法

12、。定义一个Print ()函数实现程序在主函数调用print()函数看是否出队。3)本程序包含8个函数:8.GetHeado各函数关系如下:GetHead()Print()5、详细设计Char data maxle n;SeqQUeUe *lni tQueue(SeqQueue *q) / 建立一个空循环队列int QUeUeEmPty(SeqQUeUe *q) / 判断队列是否为空char GetHead(SeqQueue *q) /QueueEmpty(q)return q-data(q-front+1)%maxlen;void Add (SeqQueue *q,char x) /(3 )

13、用 print() 函数验证程序void print(SeqQueue *q)char x,y,t;x=e;y=cAdd(q,hrx=GetHead(q);Add(q,x);awhile (QueueEmpty(q)=0) y=GetHead(q); Delete(q);%c,y);,x);取栈顶元素(4)在主函数中调用Print ()函数验证程序 q=ln itQueue(q); Prin t(q);程序名为CIaSS2.exe ,在DEBUGt件夹里面。I I LZ VL J V-3i2L -U _ XLZJ kJ U 弓 u IlJI J 4_ JKJcharPress any key

14、to COntinue#include VStdiO.h#include VStdIib.h#define maxlen 10 typedef StrUCtChar data maxlen;/建立一个空循环队列SeqQUeUe *lnitQueue(SeqQueue *q)int QueueFull (SeqQueue *q)/ 判断队列是否为满int QueueEmpty(SeqQueue *q) if (q-front) return 1;char GetHead(SeqQueue *q)/ 取栈顶元素 else printf(void Add (SeqQueue *q,char x) / 入队 void Delete(SeqQueue *q) / 出队 if (!void print(SeqQueue *q) x= Add(q,int

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1