栈和队列的应用实验报告

栈和队列的应用实验报告

ID:30264885

大小:20.32 KB

页数:16页

时间:2018-12-28

栈和队列的应用实验报告_第1页
栈和队列的应用实验报告_第2页
栈和队列的应用实验报告_第3页
栈和队列的应用实验报告_第4页
栈和队列的应用实验报告_第5页
资源描述:

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

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划栈和队列的应用实验报告  实验二栈和队列的基本操作  一、实验目的  1、定义顺序栈的结点类型,掌握顺序栈插入和删除元素在操作上  的特点。  2、定义链队列的结点类型,掌握链队列插入和删除元素在操作上  的特点。  3、加深对栈和队列的理解,逐步培养解决实际问题的编程能力。  二、实验环境  运行C或VC++的微机。  三、实验内容  1、试编写程序,在顺序存储结构下实现堆栈的下列运算:  initstk(s)。初始化操作,建立一个空栈s;  empt

2、ystk(s)。判定栈是否为空;  pushstk(s)。如果栈s不满,在栈顶插入x;  popstk(s)。如果栈s不空,删除栈顶元素,并返回该元素的值;目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  getstk(s)。如果栈s不空,返回栈顶元素。  2、试编写程序,从键盘自主输入若干字符,构建一个链队列,并实现该队列元素入队和出队的操作。  四、设计思路  1.这道题

3、我打算按顺序结构做下去,依次达成以上功能,依次摆放功能函数,已达成以上功能  2.链栈与链队列均有采用动态数组、链表  3.链栈有8个函数,含有主函数、初始化函数、判断函数、插入函数、删除函数、返回函数、创建链栈函数、输出函数;链队列有7个函数,含有主函数、初始化函数、获取函数、入队函数、出队函数、销毁函数、显示函数。  五、程序代码  链栈  #include  #include  #include  #defineOK1  #defineERROR0  typedefstructNode//定义结构体  {  intdata;//数据域  structNode

4、*next;//指针域目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  }Node,*LinkStack;  intinitstk(LinkStack*s)//初始化操作,建立一个空栈s  {  *s=(LinkStack)malloc(sizeof(Node));//建立头结点,其next为空  (*s)->next=NULL;  returnOK;  }  intempt

5、ystk(LinkStack*s)//判定栈是否为空  {  if((*s)->next==NULL)  return1;//栈空返回1  else  }  voidpushstk(LinkStack*s,int*x)//如果栈s不满,在栈顶插入x  {  LinkStackp;  if((p=(LinkStack)malloc(sizeof(Node)))==NULL)  {return0;//非空返回0  printf("不能分配内存空间");目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的

6、安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  exit(0);  }  p->data=*x;  p->next=(*s)->next;  (*s)->next=p;  }  intpopstk(LinkStack*s,int*e)//如果栈s不空,删除栈顶元素,并返回该元素的值  {  LinkStackp;  if(emptystk(s))//栈空返回ERROR  {  printf("空栈无法实现出栈操作");returnERROR;  }  p=(*s)->next;  *e

7、=p->data;  (*s)->next=p->next;  free(p);  p=NULL;  returnOK;  }目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  voidgetstk(LinkStack*s,int*e)//如果栈s不空,返回栈顶元素{  *e=(*s)->next->data;  }  intcreatstk(LinkStack*s)//创建链

8、栈,并输入

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

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

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