输入数值N输出N排杨辉三角?(用C做)
答案:1 悬赏:40
解决时间 2021-02-27 14:14
- 提问者网友:生亦何欢
- 2021-02-26 16:22
谢了
最佳答案
- 二级知识专家网友:冷眼_看世界
- 2021-02-26 17:31
#include <stdio.h>
#include "header/linkqueue.h"
int main(void)
{
int i, k = 1, n = 5, e, s;
LinkQueue Q;
if ( !InitQueue( &Q ) ) {
return -1;
}
for ( i=1; i<=n; i++ ) {
putchar(' ');
}
printf("1\n");
if ( !EnQueue( &Q, 0 ) ) {
return -1;
}
if ( !EnQueue( &Q, 1 ) ) {
return -1;
}
if ( !EnQueue( &Q, 1 ) ) {
return -1;
}
while ( k < n ) {
if ( !EnQueue ( &Q, 0 ) ) {
return -1;
}
for ( i = 1; i <= n-k; ++i ) {
putchar(' ');
}
do {
GetHead( &Q, &s );
DeQueue( &Q );
GetHead( &Q, &e );
if ( e ) {
printf("%d ", e);
} else {
putchar('\n');
}
if ( !EnQueue( &Q, s+e ) ) {
return -1;
}
} while ( e != 0 );
k++;
}
DeQueue ( &Q );
while ( !QueueEmpty(&Q) ) {
GetHead( &Q, &e );
DeQueue ( &Q );
printf( "%d ", e );
}
puts("\n\nPress Enter to quit...[sadasds]");
getchar();
return 0;
}
#include "header/linkqueue.h"
int main(void)
{
int i, k = 1, n = 5, e, s;
LinkQueue Q;
if ( !InitQueue( &Q ) ) {
return -1;
}
for ( i=1; i<=n; i++ ) {
putchar(' ');
}
printf("1\n");
if ( !EnQueue( &Q, 0 ) ) {
return -1;
}
if ( !EnQueue( &Q, 1 ) ) {
return -1;
}
if ( !EnQueue( &Q, 1 ) ) {
return -1;
}
while ( k < n ) {
if ( !EnQueue ( &Q, 0 ) ) {
return -1;
}
for ( i = 1; i <= n-k; ++i ) {
putchar(' ');
}
do {
GetHead( &Q, &s );
DeQueue( &Q );
GetHead( &Q, &e );
if ( e ) {
printf("%d ", e);
} else {
putchar('\n');
}
if ( !EnQueue( &Q, s+e ) ) {
return -1;
}
} while ( e != 0 );
k++;
}
DeQueue ( &Q );
while ( !QueueEmpty(&Q) ) {
GetHead( &Q, &e );
DeQueue ( &Q );
printf( "%d ", e );
}
puts("\n\nPress Enter to quit...[sadasds]");
getchar();
return 0;
}
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯