1 / 2
文档名称:

数据结构-利用循环队列打印杨辉三角.doc

格式:doc   大小:17KB   页数:2
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构-利用循环队列打印杨辉三角.doc

上传人:相惜 2021/1/29 文件大小:17 KB

下载得到文件列表

数据结构-利用循环队列打印杨辉三角.doc

文档介绍

文档介绍://------循环队列—队列的顺序存储结构-----
#include<>
#include<>
#include<> //exit的头文件
#define OK 1
#define ERROR 0
#define MAXQSIZE 100//最大队列长度
#define Status int
#define N 10
#define QElemType int
typedef struct{
QElemType *base;//初始化的动态分配存储空间
int front; //头指针,若队列不空,指向队列头元素
int rear; //尾指针,若队列不空,指向队列队尾元素的下一位置
}SqQueue;
//-----循环队列的基本操作的算法描述----
Status InitQueue(SqQueue &Q){
//构造一个空队列
=(QElemType *)malloc(MAXQSIZE * sizeof(QElemType));
if(!)exit(-1);//存储分配失败
==0;
return OK;
}
int QueueLength(SqQueue Q){
//返回Q的元素个数,即队列的长度
return(-+MAXQSIZE)%MAXQSIZE;
}
Status EnQueue(SqQueue &Q,QElemType e){
//插入元素e为Q的新的队尾元素
if((+1)%MAXQSIZE==) return ERROR;//队列满
[]=e;
=(+1)%MAXQSIZE;
return OK;
}
Status DeQueue(SqQueue &Q,QElemType &e){
//若队列不空,则删除Q的队头元素,用e返回其值,并返回OK;
//否则返回ERROR
if(==) return ERROR;
e=[];
=(+1)%MAXQSIZE;
return OK;
}
Status GetHead(SqQueue &Q,QElemType &e){
//若队列不空,则用e返回Q的队头元素,并返回OK;
//否则返回ERROR
if(==) return ERROR;
e=[];
return OK;
}
//----打印杨辉三角(前N行)-------------
void YangHuiTriangle()
{
int i,n,temp,x;
SqQueue