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

数据结构实验报告:实现队列和栈的各种算法及操作VIP免费

数据结构实验报告:实现队列和栈的各种算法及操作_第1页
数据结构实验报告:实现队列和栈的各种算法及操作_第2页
数据结构实验报告:实现队列和栈的各种算法及操作_第3页
佛山科学技术学院 实 验 报 告 课程名称 数据结构 实验项目 实现队列和栈的各种算法及操作 专业班级 10网络工程2 姓 名 张珂卿 学 号 2010394212 指导教师 成 绩 日 期 2 0 1 1 年1 1 月9 日 一、目的和要求 1. 理解队列和栈的顺序存储结构和链式存储结构。通过本实验,熟悉队列、栈的结构特点; 2. 熟悉队列、栈结构上的操作与算法的实现。 二、实验内容 1. 队列的基本操作和应用; 2. 栈的基本操作和应用。 三、仪器、设备和材料 1. 适合实验要求的计算机系统; 2. C语言编程平台。 四、实验原理与实验代码 队列与栈是一种操作受限制的线性表,在了解线性表的基本原理的基础上,理解与完成此项实验。 #include #include #include #define MAXSIZE 50 typedef struct QNode{ char data; //数组元素的存储结构 }QNode,*QLink; typedef struct Queue{ QNode* front; QNode* rear; int size; }*QueueArray; /**************************** 初始化队列数组 分配存储空间 初始化队头与队尾 ****************************/ int InitQueue(QueueArray queue) { QLink ql; printf("\n初始化队列:"); ql= (QNode*)malloc(MAXSIZE*sizeof(QNode)); //分配存储空间 if(!ql) { printf("MEMERY ERROR!"); return 0; } queue->front = queue->rear = ql; //初始化队头指针与队尾指针 queue->size = 0; return 1; } /********************************* 入队操作 队满条件:queue->size+1 == MAXSIZE *********************************/ int EnQueue(QueueArray queue) { if((queue->size+1)>MAXSIZE) //是否队满 { printf("已经超出了预设最大队列长度%d!",MAXSIZE); return 0; } fflush(stdin); //清理标准输入流 printf("请输入入队元素:"); scanf("%c",&queue->rear->data); queue->rear = (queue->rear)++; //队尾元素移动 queue->size++; //队长度增加 return 1; } /****************************** 出队操作 队空条件:queue->size == 0 ******************************/ int DeQueue(QueueArray queue) { if(0 == queue->size) //是否队空 { printf("注意:队列已经为空!\n"); return 0; } printf("队头元素为:%c\n",queue->front->data); (queue->...

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

碎片内容

小辰3+ 关注
实名认证
内容提供者

出售各种资料和文档

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