#include #include #include #define OK 1 #define ERROR 0 #define MAXQSIZE 100//最大队列长度 #define Status int #define N 10 #define QElemType int typedef struct{ 初始化的动态分配存储空间 头指针,若队列不空,指向队列头元素 尾指针,若队列不空,指向队列队尾元素的下一位置 }SqQueue; //-----循环队列的基本操作的算法描述---- Status InitQueue(SqQueue &Q){ 构造一个空队列 存储分配失败 } int QueueLength(SqQueue Q){ 返回Q的元素个数,即队列的长度 } Status EnQueue(SqQueue &Q,QElemType e){ 插入元素e为Q的新的队尾元素 队列满 } Status DeQueue(SqQueue &Q,QElemType &e){ 若队列不空,则删除Q的队头元素,用e返回其值,并返回OK; 否则返回ERROR } Status GetHead(SqQueue &Q,QElemType &e){ 若队列不空,则用e返回Q的队头元素,并返回OK; 否则返回ERROR } //----打印杨辉三角(前N行)------------- void YangHuiTriangle() { 第一行元素入队 产生第n行元素并入队,同时打印第n-1行的元素 第n行的第一个元素入队 利用队中第n-1行元素产生第n行的中间n-2个元素并入队 打印第n-1行的元素 利用队中第n-1行元素产生第n行元素 打印第n-1行的最后一个元素 第n行的最后一个元素入队 }//YangHuiTriangle void main() { }下载本文