文档介绍:XXXX学院计算机课程实验报告(201X~201X年度第X学期)专业 课程     数据结构    班级    组别    教师            琼州学院电子信息工程学院制实验报告填写说明填写一律用钢笔或圆珠笔填写,要求字迹工整,条理清晰。“实验题目”可以填写章节名称或用文字表述。“实验目的”要逐条列出,“实验内容”以简练的文字进行概括。“附注”处填写实验注意事项或调试过程,以及实验中出现的异常情况和解决方法。“教师批阅”处有课任老师填写评语,给出实验成绩,并作为平时成绩,参与期末成绩总评。封面和实验报告填写说明正反面打印在一张纸上。201X年XX月XX日实验项目:栈及队列的链式和线性存储以及相关操作实现实验目的:;。实验仪器:计算机、C语言版数据结构相关实验题集、编写程序软件实验规划:(包括函数说明、公共变量说明、测试说明等)公共变量声明:#include<>#include<>#defineOK1#defineERROR0函数说明:/******************************Ⅰ、栈的链式存储以及相关操作实现*******************************/typedefstructstack{intdata;structTYPE*next;}ElemType;栈的初始化:ElemType*InitStack();进栈:intPush(ElemType*head,inte);出栈:intPop(ElemType*head,int*e);显示:intDisplayStack(ElemType*Head);返回顶元素:intGettop(ElemType*head);小组各成员工作分配情况表:XXX:统一定义常量,结构体模版,函数格式(参数、返回值);讲解编写流程,检查编写函数。XXX:编写测试及美化程序XXX:编写出栈函数XXX:编写初始化及取顶函数。XXX:编写进栈函数。XXX:编写打印栈顶函数。实验内容及步骤(或程序清单):内容:此栈采用链式存储,实现了建栈、进栈、出栈、打印等功能。栈链表实现:/***************************Time:XX-XX-201XMade:XXXXXuse:Stackbychain****************************/#include<>#include<>#defineOK1#defineERROR0typedefstructstack//Defineaelemtypefordata{intdata;structTYPE*next;}ElemType;ElemType*InitStack()//Toinitializeanemptystack{ElemType*S;do{S=(ElemType*)malloc(sizeof(ElemType));}while(!S);S->data=0;S->next=NULL;printf("InitOK!\n");returnS;}intPush(ElemType*head,inte){ElemType*p=NULL,*q=NULL;p=head;do{q=(ElemType*)malloc(sizeof(ElemType));}while(!q);q->next=p->next;p->next=q;q->data=e;returnOK;}intPop(ElemType*head,int*e){ElemType*p,*q=NULL;p=head;if(head->next==NULL) { printf("TheStackisempty!\n"); returnERROR; }q=head->next;p->next=q->next;*e=q->data;free(q);returnOK;}intDisplayStack(ElemType*Head)//Justfortext{ElemType*p=NULL;p=Head->next; ElemType*E=InitStack(); ElemType*e;if(!p)returnERROR;for(;p!=NULL;p=p->next){Push(E,p->data);} e=E->next; for(;e!=NULL;e=e->next) { printf("%5d",e->data); }printf("\n");returnOK;}intGettop(ElemType*head){return(*head)->next-