实验四队列.doc_第1页
实验四队列.doc_第2页
实验四队列.doc_第3页
实验四队列.doc_第4页
实验四队列.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验目的与要求:一、目的: 掌握队列的特点和队列的基本操作二、要求: 熟练掌握顺序队列的建立、入队、出队等操作。实验设备(环境):VC+6.0实验内容:1、 分析、理解程序。2、 运行、验证示例程序能否打印杨辉三角。试描述什么叫杨辉三角。3、 试输入不同的行数调试程序,当行数超过11产生什么问题,为什么。实验步骤、实验结果及分析:#include#include#define MAXSIZE 20typedef structint datasMAXSIZE; int front,rear; SqQueue; /初始化队void InitQueue(SqQueue *Q) Q-front=Q-rear=-1;int EmptyQueue_C(SqQueue *Q)/若队列为空,返回1,否则返回0if(Q-rear=Q-front)return 1;else return 0;/EmptyQueue_C/ 取对头元素int GetQueue_C(SqQueue *Q)/若队列不为空,则返回队首元素,否则返回NULLint e;if(EmptyQueue_C(Q) printf(Queue is emptyn); return(0);else e=Q-datas(Q-front+1)%MAXSIZE; return e;/GetQueue_C/入队int EnQueue_C(SqQueue *Q, int e)/将元素e插入到队列中,作为新的队尾。操作成功返回1,否则返回0if(Q-front=(Q-rear+1)%MAXSIZE)/队满printf(Queue is full.n); return 0;elseQ-rear=(Q-rear+1)%MAXSIZE; Q-datasQ-rear=e; return 1;/EnQueue_C/出队int DeQueue_C(SqQueue *Q) /删除队头元素,若操作成功返回1,否则返回0if(EmptyQueue_C(Q)printf(Queue is empty.n); return 0;elseQ-front=(Q-front+1)%MAXSIZE; return 1;/DeQueue_C/输出队void PRINT(SqQueue *Q)int i;if(Q-front!=Q-rear)printf(当前循环队列中从头到尾的元素为:);i=Q-front;while(i!=Q-rear)i=(i+1)%MAXSIZE;printf(%d ,Q-datasi);elseprintf(当前循环队列为空!);putchar(n);main()SqQueue *Q;int n;int i,j,k,s1,s2; Q=(SqQueue *)malloc(sizeof(SqQueue);InitQueue(Q);EnQueue_C(Q,1);printf(请输入杨辉三角的层数:n); scanf(%d,&n); printf(1n); for(i=2;i=n;i+) for(k=0;kn-i;k+) printf( ); for(j=1,s1=0;ji;j+) int s2; s2=GetQueue_C(Q);DeQueue_C(Q); printf(%d,s1+s2); printf( ); EnQueue_C(Q,s1+s2); s1=s2; printf(1); EnQueue_C(Q,1); printf(n); 实验结果:实验总结(包括过程总结、心得体会及实验改进意见等):在输入行数时,不能使结果满溢出,要弄清程序可表示的范围,考虑清楚设置存储空间的大小。还要注意取出的队列的数据类型,类型不一样表示的范围也不一样。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论