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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(国开作业《数据结构本》提交实验报告参考248.docx)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

国开作业《数据结构本》提交实验报告参考248.docx

1、国开作业数据结构本提交实验报告参考248实验名称:实验3 栈、列队、递归程序设计2.1 栈和队列的基本操作【问题描述】编写一个算法,输出指定栈中的栈底元素,并使得原栈中的元素倒置。【基本要求】(1)正确理解栈的先进后出的操作特点,建立初始栈,通过相关操作显示栈底元素。(2)程序中要体现出建栈过程和取出栈底元素后恢复栈的入栈过程,按堆栈的操作规则打印结果栈中的元素。【实验步骤;】(1)运行PC中的Microsoft Visual C+ 6.0程序,(2)点击“文件”“新建” 对话窗口中“文件” “c+ Source File” 在“文件名”中输入“X1.cpp” 在“位置”中选择储存路径为“桌面

2、” “确定”,(3)输入程序代码,程序代码如下:#include #include #define MaxSize 100typedef char ElemType;typedef struct ElemType dataMaxSize; int top; /栈顶指针 SeqStack;/定义栈typedef struct ElemType elemMaxSize; int front,rear; /队首和队尾指针 SqQueue;/定义队列/-初始栈函数void InitStack(SeqStack *&s) s=(SeqStack *)malloc(sizeof(SeqStack); s-

3、top=-1;/-进栈函数int Push(SeqStack *&s,ElemType e) if (s-top=MaxSize-1) return 0; s-top+; s-datas-top=e; return 1;/-显示栈函数void DispStack(SeqStack *s) int i; for (i=s-top;i=0;i-) printf(%c ,s-datai); printf(n);/-显示栈底元素void DispBottomStack(SeqStack *s) printf(%c ,s-data0);/先进后出,栈底元素为第一个元素,即data0 printf(n);

4、/-判空栈函数int StackEmpty(SeqStack *s) return(s-top=-1);/-出栈函数int Pop(SeqStack *&s,ElemType &e) if (s-top=-1) return 0; e=s-datas-top; s-top-; return 1;/-初始队列函数void InitQueue(SqQueue *&q) q=(SqQueue *)malloc (sizeof(SqQueue); q-front=q-rear=0;/-入队列函数int InQueue(SqQueue *&q,ElemType e) if (q-rear+1)%MaxS

5、ize=q-front) /队满 return 0; q-rear=(q-rear+1)%MaxSize; q-elemq-rear=e; return 1;/-出队列函数int OutQueue(SqQueue *&q,ElemType &e) if (q-front=q-rear) /队空 return 0; q-front=(q-front+1)%MaxSize; e=q-elemq-front; return 1;/-判空队列函数int QueueEmpty(SqQueue *q) return(q-front=q-rear);/-主程序void main() ElemType e;

6、SeqStack *s; printf(1)初始化栈sn); InitStack(s); printf(2)栈为%sn,(StackEmpty(s)?空:非空); printf(3)依次进栈元素a,b,c,d,en); Push(s,a);/入栈元素1 Push(s,b);/入栈元素2 Push(s,c);/入栈元素3 Push(s,d);/入栈元素4 Push(s,e);/入栈元素5 printf(4)栈为%sn,(StackEmpty(s)?空:非空); printf(5)从栈顶到栈底元素:);DispStack(s); printf(6)栈底元素为:);DispBottomStack(s

7、); printf(7)出栈/入队列序列:); SqQueue *q; InitQueue(q); while (!StackEmpty(s) Pop(s,e);/出栈 printf(%c ,e); InQueue(q,e);/入队 printf(n); printf(8)栈为%s,(StackEmpty(s)?空:非空); printf(队列为%sn,(QueueEmpty(q)?空:非空); printf(9)出队列/入栈序列:); while (!QueueEmpty(q) OutQueue(q,e);/出队 Push(s,e);/入栈 printf(%c ,e); printf(n);

8、 printf(10)栈为%s,(StackEmpty(s)?空:非空); printf(队列为%sn,(QueueEmpty(q)?空:非空); free(q);/释放队列 printf(11)从栈顶到栈底元素:);DispStack(s); free(s);/释放栈 程序运行结果如下:2.2 递归程序设计【问题描述】给定一个5位的十进制正整数,用递归法分别编制程序:(1)要求从低位到高位逐次输出各位数字。(2)要求从高位到低位逐次输出各位数字。【基本要求】(1)比较题中两种不同要求的递归程序设计和执行过程差别。(2)正确理解递归程序的执行过程。(3)显示计算结果。【实验步骤】(1)运行PC

9、中的Microsoft Visual C+ 6.0程序,点击“文件”“新建” 对话窗口中“文件” “c+ Source File” 在“文件名”中(2)输入“X1.cpp” 在“位置”中选择储存路径为“桌面” “确定”,(3) 输入程序代码程序代码如下:#include#includevoid out(int n,int i)/从高位到低位输出函数int x,y;y=int(pow(10,i);if (n!=0)x=n/y;n=n-x*y;printf(%d ,x);else printf(0 );i-;if(i=0) out(n,i);void out1(int m,int j)/从低位到高

10、位输出函数int x,z;if (m!=0)x=int(m/10);z=m-x*10;m=x;printf(%d ,z);else printf(0 );j-;if(j=0) out1(m,j);void main()int m,n,o,x,i,j;printf(输入需要排列的数字:n);scanf(%d,&o);m=n=o;x=n;i=-1;while(x!=0)x=x/10;i+;/求出i为十进制正整数位数j=i;printf(n);printf(从高位到低位逐次输出各位数字:);out(n,i);printf(n);printf(从低位到高位逐次输出各位数字:);out1(m,j);printf(n); 程序运行结果如下:实验结论:栈和队列是运算受限制的线性表 栈:后进先出(LIFO) 例:进栈b, c, d, e, f 出栈可能为 f, e, d, c, b; b, c, d, e, f ; c, b, e, d, f 但不可能是e, d, f, b, c 队列:先进先出(FIFO) 例:入队1,2,3,4,5 出队1,2,3,4,5

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1