1 / 6
文档名称:

打印杨辉三角形C语言.doc

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

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

分享

预览

打印杨辉三角形C语言.doc

上传人:AIOPIO 2021/1/18 文件大小:33 KB

下载得到文件列表

打印杨辉三角形C语言.doc

相关文档

文档介绍

文档介绍:使用队列打印杨辉三角形
1.主要功能描述:
使用队列的入队,出队,获得头结点和判断是否为空等等,来实现对杨辉三角形的打印,第i行上的元素要由第i-1行中的元素来生成。
设计分析:由杨辉三角形的特点,即每一行的第一个元素和最后一个元素均为1,其他位置上的数字是其上一行中与之相邻的两个整数之和。所以第i行上的元素要由第i—1行中的元素来生成。
运行效果图
①重要变量用途说明 ②算法描述
#include<stdio。h〉
#define MAXSIZE 50
#define QueueElementtype int
typedef struct ﻩﻩﻩﻩﻩ//定义循环队列
{
ﻩQueueElementtype element[MAXSIZE];  //队列元素空间
int front; ﻩﻩ //头指针指示器
ﻩint rear; ﻩ ﻩ //尾指针指示器
}SeqQueue;
void InitQueue(SeqQueue *Q)ﻩ ﻩ//初始化为循环空队列

ﻩQ->front=Q->rear=0;

int EnterQueue(SeqQueue *Q, QueueElementtype x) //入队操作

if((Q—〉rear+1)%MAXSIZE==Q—>front) //尾指针加1追上头指针,标志队列已经满了
return (false);
ﻩQ-〉element[Q—>rear]=x;
Q—〉rear=(Q-〉rear+1)%MAXSIZE; ﻩ//重新设置尾指针
ﻩreturn (true);
} 
int DeleteQueue(SeqQueue *Q,QueueElementtype *x) //出队操作

if(Q—>front==Q—>rear)ﻩﻩ //队列为空,不能操作
ﻩﻩreturn (false);
*x=Q->element[Q->front];
ﻩQ-〉front=(Q->front+1)%MAXSIZE; ﻩ//重新设置头指针
return (true);
}
int IsEmpty(SeqQueue *Q) //判断队列是否为空
{
ﻩif(Q-〉front==Q-〉rear)
return true;
ﻩelse 
ﻩﻩreturn false;
}
int  GetHead(SeqQueue *Q,QueueElementtype *x)

if(!IsEmpty(Q))
{
ﻩ *x=Q—〉element[Q->front];
ﻩ return true;
ﻩ}
ﻩelse
ﻩreturn false;
}
void YangHuiSanJiaoXing()   //定义函数

ﻩSeqQueue Q;
int n,N,m,j;
int x,i,temp; /*定义要使用的变量*/
ﻩInitQueue(&Q);
printf(”请输入要打印的行数:");  //输入要打印的行数
ﻩscanf(”%d",&N);
ﻩm=N;