C 언어 데이터 구 조 는 순환 대기 열 을 이용 하여 양 휘 삼각형 을 출력 한다.
#include
#include
#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(" :
");
scanf("%d",&n);
printf(" :
");
fun(n);
}
Seq_Queue*init_seqqueue()//
{
Seq_Queue*q;
q=(Seq_Queue*)malloc(sizeof(Seq_Queue));
if(q==NULL)
return NULL;
else
{
q->front=0;
q->rear=0;
}
return q;
}
void enter_seqqueue(Seq_Queue*Q,element x)//
{
Q->data[Q->rear]=x;
Q->rear=(Q->rear+1)%MAXSIZE;
}
void delet_seqqueue(Seq_Queue*Q,int *x)//
{
*x=Q->data[Q->front];
Q->front=(Q->front+1)%MAXSIZE;
}
void getdata_seqqueue(Seq_Queue*Q,int *x)//
{
*x=Q->data[Q->front];
}
void fun(int n)//
{
int i,k;
Seq_Queue*q;
q=init_seqqueue();
int a1,a2;
printf("%d
",1);
enter_seqqueue(q,1);
enter_seqqueue(q,1);
for(i=2;i<=n;i++)
{
enter_seqqueue(q,1);// i+1
for(k=0;k<=i-2;k++)
{
delet_seqqueue(q,&a1);//
getdata_seqqueue(q,&a2);//
printf("%d ",a1);
enter_seqqueue(q,a1+a2);
// i+1
}
delet_seqqueue(q,&a2);// i
printf("%d
",a2);// i
enter_seqqueue(q,1);// i+1
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
c 언어 간단한 파일 r/w 조작 방법데이터의 입력과 출력은 거의 모든 C 언어 프로그램과 수반된다. 입력이란 원본에서 데이터를 얻는 것이다. 출력은 단말기에 데이터를 쓰는 것으로 이해할 수 있다.이곳의 원본은 키보드, 마우스, 하드디스크, 시디, 스캐...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.