欢迎来到天天文库
浏览记录
ID:44900933
大小:132.26 KB
页数:21页
时间:2019-11-02
《大数据结构实验报告材料二》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、文档LIAOCHENGUNIVERSITY计算机学院实验报告【2016~2017学年第1学期】【一、基本信息】【实验课程】数据结构【设课形式】独立□非独立☑【课程学分】4【实验项目】栈和队列【项目类型】基础☑综合□设计□研究创新□其它[]【项目学时】4【学生姓名】沈凯【学号】2015205377【系别专业】软件开发【实验班组】15级11班组台【同组学生】【实验室名】综合实验楼【实验日期】2016.【报告日期】2016.【二、实验教师对报告的最终评价及处理意见】文档实验成绩:(涂改无效)指导教师签名:张振领2016年月日注:要将实验项目、实验课程的成绩评定及课程考核办法明确告知学
2、生,并报实验管理中心备案文档【三、实验预习】实验目的和要求:1、熟练掌握栈和队列的结构,以及这种数据结构的特点;2、会定义顺序栈、循环队列,能实现栈、队列的基本操作;3、会利用栈解决典型问题,如数制转换等。实验内容和原理或涉及的知识点:用C语言设计实现栈的初始化、入栈、出栈、判空等功能,并利用栈完成数制转换功能;设计实现循环队列的定义、初始化、入队、出队、求队列长度等功能。实验条件:具有C语言集成开发环境的计算机文档实验设计方案:栈设计的算法有:1、初始化栈;2、入栈;3、出栈;4、判断栈是否为空;5、十进制转换为八进制。队列设计的算法有:1、初始化;2、入队;3、出队;4、求
3、队列长度。实验预习成绩(涂改无效)合格□不合格□文档【四、实验过程、数据和实验结果记录】文档①实验方法、步骤、操作过程的记录描述或程序代码。②实验过程中输入/输出数据、程序运行结果的记录。(可加附页)1、根据实验预习阶段的实验设计方案,编写顺序栈的伪C代码如下。typedefstruct{SElemType*base;SElemType*top;intstacksize;}SqStack;StatusInitStack(SqStack&S){S.base=(SElemType*)malloc(STACK_INIT_SIZE*sizeof(SElemType));if(!S.ba
4、se)exit(OVERFLOW);S.top=S.base;S.stacksize=STACK_INIT_SIZE;returnOK;}//InitStackStatusPush(SqStack&S,SElemTypee){if(S.top-S.base>=S.stacksize)//栈满{S.base=(SElemType*)realloc(S.base,(S.stacksize+STACKINCREMENT)*sizeof(SElemType));if(!S.base)exit(OVERFLOW);S.top=S.base+S.stacksize;S.stacksize+
5、=STACKINCREMENT;}//if*S.top++=e;returnOK;}//PushStatusPop(SqStack&S,SElemType&e){if(S.top==S.base)returnERROR;文档e=*--S.top;returnOK;}//PopStatusStackEmpty(SqStackS){if(S.base==S.top)returnTRUE;returnFALSE;}voidconversion(){InitStack(S);scanf("%d",&N);while(N){Push(S,N%8);N=N/8;}while(!StackE
6、mpty(S)){Pop(S,e);printf("%d",e);}}//conversion2、将算法细化为程序代码。#include#include#defineLIST_INIT_SIZE10#defineLISTINCREMENT100文档#defineSTACK_INIT_SIZE100#defineSTACKINCREMENT10#defineTRUE1#defineFALSE0#defineOK1#defineERROR0#defineINFEASIBLE-1#defineOVERFLOW-2typedefintStatus;
7、typedefintSElemType;typedefstruct{SElemType*base;SElemType*top;intstacksize;}SqStack;StatusInitStack(SqStack*S);StatusPush(SqStack*S,SElemTypee);StatusPop(SqStack*S,SElemType*e);文档StatusStackEmpty(SqStackS);voidconversion();intmain(){printf("Please
此文档下载收益归作者所有