C语言数据结构利用循环队列输出杨辉三角

本文介绍了一种使用C语言中循环队列实现打印杨辉三角的方法。首先输出第一行的1,接着将第二行的两个1入队。从第二行开始,循环处理每一行,通过入队和出队操作,根据杨辉三角的规律计算每个位置的值,并输出。此算法充分利用了循环队列的先进先出特性。
摘要由CSDN通过智能技术生成

/*利用循环链表打印杨辉三角算法逻辑
*第一步先将第一行的1输出
*将第二行 的两个1进行入队操作
*从第二行开始 先将下一行的第一个元素1入队
*进入第二个循环将第i行的第一个元素出队 并得到第二个元素的值
*然后将出队的值进行输出
*将a1和a2的值进行计算 然后入队
*第二层循环结束 进入第一层的后期循环
*将i行的最后一个元素进行出队并输出
*最后将i+1行的最后一个元素1入队
*主要利用循环队列的先进先出的规则
*/

#include<stdio.h>
#include<stdlib.h>
#define MAXSIZE 1024
typedef  int element;
typedef struct seqqueue
{
    element data[MAXSIZE];
      int front;
      int rear;
}Seq_Queue;
Seq_Queue*init_seqqueue();//循环队列的初始化
void fun(int n);//函数实现
void enter_seqqueue(Seq_Queue*Q,element x);//循环队列元素入队
void delet_seqqueue(Seq_Queue*Q,int *x);//循环队列的出队
void getdata_seqqueue(Seq_Queue*Q,int *x);//取对头元素
void main()
{
    int n;
    printf("请输入杨辉三角的行数:\n");
     scanf("%d",&n);
     printf("打印的杨辉三角为:\n");
        fun(n);
}
Seq_Queue*init_seqqueue()//循环队列的初始化
{
    Seq_Queue*q;
    q=(Seq_Queue*)malloc(sizeof(Seq_Queue));
      if(q==NULL)
         ret
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值