[栈及队列的操作]数据结构实验报告C语言源码

上传人:小** 文档编号:177613885 上传时间:2022-12-26 格式:DOC 页数:8 大小:57KB
收藏 版权申诉 举报 下载
[栈及队列的操作]数据结构实验报告C语言源码_第1页
第1页 / 共8页
[栈及队列的操作]数据结构实验报告C语言源码_第2页
第2页 / 共8页
[栈及队列的操作]数据结构实验报告C语言源码_第3页
第3页 / 共8页
资源描述:

《[栈及队列的操作]数据结构实验报告C语言源码》由会员分享,可在线阅读,更多相关《[栈及队列的操作]数据结构实验报告C语言源码(8页珍藏版)》请在装配图网上搜索。

1、课程名称实验项目名称数据结构栈和队列(一)实验目的和要求;熟练掌握栈及队列基本操作的实现(二)实验主要内容;(1)建立栈并进行元素(8,9,5,4)入栈,实现链栈的建立及入栈的基本操作;(2)实现元素(9,5)的出栈,实现链栈的出栈的操作;(3)建立链队列,并实现元素(4,5,7,6,8)入队,实现链队列的建立,和入队的基本操作;(4)实现元素(4,5,7,6,8)出队,实现链队列的出队的基本操作(三)主要仪器设备计算机,VC+高级程序语言(四)实验原理栈的修改时按照先进后出的原则进行的,试验中用到构造空栈,及入栈出栈操作。队列是一种先进先出的线性表,只允许在表的一端插入,而在另一端删除元素,

2、试验中构造队并且入队出队。(五)实验步骤及调试分析;根据课本基本操作写好源程序,基本操作在书本中已经给出,写出主函数,调试分析程序,找出错误,并修改后程序能够运行并得出正确输出。试验中,有些小错误经常犯,比如符号,函数声明等。(六)实验结果及分析;实验结果如下:能够按照实验要求得出正确结果(七)附录:源程序#include#include#defineOK1#defineERROR0#defineOVERFLOW-2typedefintelemtype;typedefintstatus;typedefstructQNodeelemtypedata;structQNode*next;QNode,

3、*QueuePtr;typedefstructQueuePtrfront;QueuePtrrear;LinkQueue;typedefstructlnodeelemtypedata;structlnode*next;stacknode,*linkstack;statusinitstack(linkstacktop)top-next=NULL;statusisempty(linkstacktop)if(top-next=NULL)returnOK;returnERROR;statuspush(linkstacktop,elemtypee)stacknode*p;p=(stacknode*)mal

4、loc(sizeof(stacknode);if(p=NULL)returnERROR;p-data=e;p-next=top-next;top-next=p;returnOK;statuspop(linkstacktop,elemtype*e)if(isempty(top)returnERROR;stacknode*p=top-next;*e=p-data;top-next=p-next;free(p);returnOK;statusshstack(linkstacktop)stacknode*p;p=(stacknode*)malloc(sizeof(stacknode);p-next=t

5、op-next;while(p-next!=NULL)printf(%d,p-next-data);p-next=p-next-next;returnOK;statusinitqueue(LinkQueue*q)(*q).front=(*q).rear=(QueuePtr)malloc(sizeof(QNode);if(!(*q).front)exit(OVERFLOW);(*q).front-next=NULL;returnOK;statusenqueue(LinkQueue*q,elemtypee)QueuePtrp=(QueuePtr)malloc(sizeof(QNode);if(!p

6、)exit(OVERFLOW);p-data=e;p-next=NULL;(*q).rear-next=p;(*q).rear=p;returnOK;statusdequeue(LinkQueue*q,elemtype*e)if(*q).front=(*q).rear)returnERROR;QueuePtrp;p=(*q).front-next;*e=p-data;/注意(*q).front-next=p-next;if(*q).rear=p)(*q).rear=(*q).front;free(p);returnOK;voidmain()linkstacks;s=(linkstack)mal

7、loc(sizeof(stacknode);initstack(s);printf(进入栈的4个元素依次为:n);for(inti=0;i4;i+)elemtypea;scanf(%d,&a);push(s,a);printf(n栈顶到栈底的元素依次为;n);shstack(s);elemtypeb,c,d;pop(s,&b);pop(s,&c);pop(s,&d);push(s,b);printf(nn出栈的元素为:);printf(%d,c);printf(%dn,d);printf(n现在栈中的元素为:);shstack(s);LinkQueueq;initqueue(&q);elemtypea;printf(nnn请输入5个进队的元素:n);for(inti=0;i5;i+)scanf(%d,&a);enqueue(&q,a);printf(n元素的出列为:n);for(inti=0;i5;i+)elemtypee;dequeue(&q,&e);printf(%d,e);

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!