实验报告-栈和队列的基本操作

实验报告-栈和队列的基本操作

ID:35222196

大小:74.00 KB

页数:3页

时间:2019-03-22

实验报告-栈和队列的基本操作_第1页
实验报告-栈和队列的基本操作_第2页
实验报告-栈和队列的基本操作_第3页
资源描述:

《实验报告-栈和队列的基本操作》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、计算机学院实验报告专用纸实验室:网络实验室机号:网34实验日期:2008年4月3日姓名XXX班级课程名称数据结构任课教师实验项目名称栈和队列的基本操作指导教师实验组别X同组者无教师评语及成绩:实验成绩:教师签字:(请按照实验报告的有关要求书写。一般必须包括:1、实验目的;2、实验内容;3、实验步骤与方法;4、实验数据与程序清单;5、出现的问题与解决方法;6、实验结果、结果分析与体会等内容)1、实验目的(1)掌握顺序栈的基本操作:初始化栈、判栈空否、入栈、出栈、取栈顶数据元素等运算以及程序实现方法;(2)掌握队列的基本操作:初始化队列、判队空否、入队、出队等运算以及程序实现方法。2、实

2、验内容利用栈的基本操作实现一个判断算术表达式中包含圆括号、方括号是否正确配对的程序。3、实验步骤和方法(1)定义栈的顺序存取结构;(2)分别定义顺序栈的基本操作(初始化栈、判栈空否、入栈、出栈等);(3)定义一个函数来判断算术表达式中包含圆括号、方括号是否正确配对。其中,括号配对共有四种情况:左右括号配对次序不正确;右括号多于左括号;左括号多于右括号;左右括号匹配正确;(4)设计一个测试主函数进行测试。(5)对程序的运行结果进行分析。4、实验数据与程序清单3计算机学院实验报告附页姓名XXX班级实验名称栈和队列的基本操作和简单程序#include#defineMaxS

3、ize100typedefstruct{intdata[MaxSize];   inttop;}SqStack;voidInitStack(SqStack*st)//初始化栈{   st->top=-1;}intStackEmpty(SqStack*st)//判断栈为空{   return(st->top==-1);}voidPush(SqStack*st,intx)//元素进栈{   if(st->top==MaxSize-1)       printf("栈上溢出!");   else   {       st->top++;       st->data[st->top]=

4、x;   }}voidPop(SqStack*st)//退栈{   if(st->top==-1)       printf("栈下溢出");   else   st->top--;}intGettop(SqStack*st)//获得栈顶元素{   if(st->top==-1)   {       printf("栈空");       return0;   }   else       returnst->data[st->top];3计算机学院实验报告附页姓名XXX班级实验名称栈和队列的基本操作和简单程序}voidDisplay(SqStack*st)//打印栈里元素{

5、   inti;   printf("栈中元素:");   for(i=st->top;i>=0;--i)       printf("%d",st->data[i]);   printf("");}intmain()//测试{   SqStackL;   SqStack*st=&L;   InitStack(st);   printf("栈空:%d",StackEmpty(st));   for(inti=1;i<10;++i)       Push(st,i);   Display(st);   printf("退一次栈");   Pop(st);   printf(

6、"栈顶元素:%d",Gettop(st));   Pop(st);   Display(st);   return0;}5、实验结果:3

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。