电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

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

[栈及队列的操作]数据结构实验报告C语言源码_第1页
1/7
[栈及队列的操作]数据结构实验报告C语言源码_第2页
2/7
[栈及队列的操作]数据结构实验报告C语言源码_第3页
3/7
课 程 名 称 数 据 结 构 实 验 项 目 名 称 栈 和 队 列 (一)实验目的和要求; 熟练掌握栈及队列基本操作的实现 (二)实验主要内容; (1) 建立栈并进行元素(8,9,5,4)入栈,实现链栈的建立及入栈的基本操作; (2) 实现元素(9,5)的出栈,实现链栈的出栈的操作; (3) 建立链队列,并实现元素(4,5,7,6,8)入队,实现链队列的建立,和入队的基本操作; (4) 实现元素(4,5,7,6,8)出队,实现链队列的出队的基本操作 (三)主要仪器设备 计算机,VC++高级程序语言 (四)实验原理 栈的修改时按照先进后出的原则进行的,试验中用到构造空栈,及入栈出栈操作。队列是一种先进先出的线性表,只允许在表的一端插入,而在另一端删除元素,试验中构造队并且入队出队。 (五)实验步骤及调试分析; 根据课本基本操作写好源程序,基本操作在书本中已经给出,写出主函数,调试分析程序,找出错误,并修改后程序能够运行并得出正确输出。试验中,有些小错误经常犯,比如符号,函数声明等。 (六)实验结果及分析; 实验结果如下: 能够按照实验要求得出正确结果 (七)附录:源程序 #include #include #define OK 1 #define ERROR 0 #define OVERFLOW -2 typedef int elemtype; typedef int status; typedef struct QNode{ elemtype data; struct QNode *next; }QNode,*QueuePtr; typedef struct { QueuePtr front; QueuePtr rear; }LinkQueue; typedef struct lnode { elemtype data; struct lnode *next; }stacknode, *linkstack; status initstack(linkstack top) { top->next = NULL; } status isempty(linkstack top) { if(top->next == NULL) return OK; return ERROR; } status push(linkstack top, elemtype e) { stacknode *p; p= (stacknode *)malloc(sizeof(stacknode)); if(p == NULL) return ERROR; p->data = e; p->next = top->next; top->next = p; return OK; } status pop(linkstack top, elemtype *e) { if(isempty(top)) return ERROR; stacknode *p = top->next; *e = p->data; top->next = p->next; free(p); return OK; } status shstack(linkstack top){ stacknode *p; p= (stacknode *)malloc(sizeof(stacknode)); p->next=to...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

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

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部