//啊啊啊
//实在不知道格式是什么 还没过,明天去问问老师
#include <stdio.h>
#include <stdlib.h>
const int maxnsize=10000;
typedef struct
{
int data[maxnsize];
int front;
int rear;
}sequeue;
void init(sequeue &q)
{
q.front=q.rear=0;
}
void enqueue(sequeue &q,int x)
{
if((q.rear+1)%maxnsize==q.front)
{printf("队满\n");return;}
q.data[q.rear]=x;
q.rear=(q.rear+1)%maxnsize;
}
void dequeue(sequeue &q,int &e)
{
if(q.rear==q.front)
{
printf("队空\n");
return;
}
e=q.data[q.front];
q.front=(q.front+1)%maxnsize;
}
int GetSum(sequeue &q)
{
int sum=q.data[q.front+1]+q.data[q.front];
return sum;
}
int main()
{
sequeue q;
int n,k,i,e;
scanf("%d",&n);
init(q);
for(k=1;k<=n;k++)
{
for(i=-4;i<=n-k;i++)
printf(" ");
if(k==1)
{
printf("%d\n",1);
}
if(k==2)
{
printf("%d %d\n",1,1);
enqueue(q,1);
enqueue(q,1);
}
if(k>=3)
{
printf("1 ");
for(i=1;i<=k-2;i++)
{
int sum=GetSum(q);
printf("%d ",sum);
enqueue(q,sum);
dequeue(q,e);
}
printf("1\n");
enqueue(q,1);
}
}
return 0;
}
队列实现的杨辉三角
最新推荐文章于 2025-04-09 20:50:44 发布