ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:1,022.50KB ,
资源ID:2282365      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-2282365.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(课程实验报告+2.doc)为本站会员(sk****8)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

课程实验报告+2.doc

1、 课 程 实 验 报 告专 业 年 级 2012 级软件工程 课 程 名 称 数据结构 C 语言描述 指 导 教 师 申红婷 学 生 姓 名 王晓霞 学 号 20122205041002 实 验 日 期 2012.11.7 实 验 地 点 A3 笃行楼 A 栋 306 实 验 成 绩 教务处制2013 年 10 月 07 日实验项目名称 栈和队列实验实验目的及要求一目的:使学生对栈和队列的顺序存储结构和链式结构、基本操作和应用,能通过实验达到掌握和应用的目的。要求学生对栈和队列的顺序存储结构和链式结构的基本操作均作验证性实验,对栈和列的应用各作一个设计性实验,并写出实验报告。二要求:实验前认真

2、预习实验内容,实验时自觉遵守课堂纪律,严格按操作规程操作,既要独立操作又要与其他同学配合,在实验过程中必须按照实验内容认真做完实验,并认真填写相关实验报告。实验内容 栈和队列的顺序存储结构和链式结构、基本操作和应用。实验步骤1、阅读下面程序,将函数 Push 和函数 Pop 补充完整。要求输入元素序列 1 2 3 4 5 e,运行结果如下所示。#include#include#define ERROR 0#define OK 1#define STACK_INT_SIZE 10 /*存储空间初始分配量*/#define STACKINCREMENT 5 /*存储空间分配增量*/typedef

3、int ElemType; /*定义元素的类型*/typedef structElemType *base;ElemType *top;int stacksize; /*当前已分配的存储空间*/SqStack;int InitStack(SqStack *S); /*构造空栈*/int push(SqStack *S,ElemType e); /*入栈*/int Pop(SqStack *S,ElemType *e); /*出栈*/int CreateStack(SqStack *S); /*创建栈*/void PrintStack(SqStack *S); /*出栈并输出栈中元素*/int

4、InitStack(SqStack *S)S-base=(ElemType *)malloc(STACK_INT_SIZE*sizeof(ElemType);if(!S-base) return ERROR;S-top=S-base;S-stacksize=STACK_INT_SIZE;return OK;/*InitStack*/int Push(SqStack *S,ElemType e)if (S-top-S-base=S-stacksize) S-base=(ElemType*)realloc( S-base,(S-stacksize+STACKINCREMENT)*sizeof(El

5、emType) ); S-top=S-base+S-stacksize; S-stacksize+=STACKINCREMENT; *S-top+=e; return 1;/*Push*/int Pop(SqStack *S,ElemType *e)if (S-top!=S-base) *e=*-S-top; return 1; else return 0;/*Pop*/int CreateStack(SqStack *S)int e;if(InitStack(S)printf(“Init Success!n“);elseprintf(“Init Fail!n“);return ERROR;p

6、rintf(“input data:(Terminated by inputing a character)n“);while(scanf(“%d“,return OK;/*CreateStack*/void PrintStack(SqStack *S)ElemType e;while(Pop(S,/*Pop_and_Print*/int main()SqStack ss;printf(“n1-createStackn“);CreateStack(printf(“n2-PopPrintStack(printf(“n“); return 0; 算法分析:输入元素序列 1 2 3 4 5,为什么输

7、出序列为 5 4 3 2 1?体现了栈的什么特性?程序运行结果如下图所示:因为当 main 函数调用 PrintStack( int m=0,k=0; InitStack(S); printf(“Input elementn“); scanf(“%d“, while(n) m+; Push(S,n%2); n=n/2; while(k#include#include#define M 20#define elemtype chartypedef structelemtype stackM;int top;stacknode;void init(stacknode *st);void push(

8、stacknode *st,elemtype x);void pop(stacknode *st);void init(stacknode *st)st-top=0;void push(stacknode *st,elemtype x)if(st-top=M)printf(“the stack is overflow!n“);elsest-top=st-top+1;st-stackst-top=x;void pop(stacknode *st)if(st-top0) st-top-;else printf(“Stack is Empty!n”);int main()char sM;int i;

9、stacknode *sp;printf(“create a empty stack!n“);sp=malloc(sizeof(stacknode);init(sp);printf(“input a expression:n“);gets(s);for(i=0;itop=0)printf(“(match)!n“);elseprintf(“(not match)!n“);return 0;输入:2+(c-d)*6-(f-7)*a)/6运行结果:输入:a-(c-d)*6-(s/3-x)/2运行结果:程序的基本功能:判断所输入多项式的左右括号是否配对。实验环境(一)运行环境说明PC 计算机,Wind

10、ows 2000(或 Windows XP) 及以上版本,C(二)基础数据设置及说明计算机,Windows 2000(或 Windows XP) 及以上版本,C 均能正常运行。实验结果与分析通过这次实验,我已经基本掌握了本章的学习要点和实验的基本要求以及目的。第一个程序填空题使我学会了栈和队列的结构定义,逻辑特性及其基本操作的使用。而第二个程序分析则使我明白了栈和队列的顺序存储表示和链式存储表示,这使得我懂得了该在什么情况下分别实用两种存储表示并用程序代码实现它们相应的操作。虽然我最终顺利完成了实验,但是在实验过程中我也遇到了许多问题,比如说,不清楚栈和队列的结构定义以至于在后续过程中无法使用站和队列,造成了极大的麻烦,还有在实现某些操作时,无法用程序代码将其顺利运行。然而遇到问题我并没有退缩,我努力去图书馆查阅资料并且请教老师同学,最终将这些问题各个击破。与此同时,我也取得了极大的进步。总而言之,这次有关栈和队列的实验使我受益匪浅,弄明白了许多曾经模糊的知识点,也学会了许多以前并不知道的知识。教师评语注:可根据实际情况加页

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。