java代码打印杨辉三角 java打印输出直角三角形( 三 )


#include iostream
using namespace std;
#define MAXH 31
int main()
{
int i,j;
unsigned long num[MAXH]={0};
num[0] = 1;
for(i = 0; iMAXH; i++)
{
for(j = i; j0; j--)
{
num[j] = num[j] + num[j - 1];//A[i,j]=A[i,j-1]+A[i,j]
coutnum[j]" ";
}
cout"1"endl;
}
return 0;
}
数组输出杨辉三角
/*直角三角形*
#includeiostream
using namespace std;
int main()
{
int h,i,j;
cout"请输入杨辉三角的高度:"endl;
cinh;
int a[10][10];
for(i=0;i10;i++)
{
a[i][i]=1;
a[i][0]=1;
}
for(i=2;i10;i++)
for(j=1;j=i-1;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i=h;i++)
{
for(j=0;j=i;j++)
couta[i][j]'\t';
coutendl;
}
return 0;
}
/*等腰三角形*
#includeiostream
using namespace std;
int main()
{
int i,j,h,a[10][10];
cout"请输入杨辉三角的高度:"endl;
cinh;
for(i=0;i=h;i++)
{
for(j=0;j=i;j++)
{
if(i==j||j==0)
a[i][j]=1;
else
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
}
for(i=0;i=h;i++)
{
for(j=h;j=i;j--)
cout" ";
for(j=0;j=i;j++)
{
couta[i][j]'\t';
if(i==j)
coutendl;
}
}
return 0;
}
递归方法输出直角杨辉三角
#includeiostream
using namespace std;
int computeTriangleElement(int level,int index);
void yanghuiTriangle(int level);
void yanghuiTriangle(int level)
{
for(int i=1;i=level;i++)
{
for(int j=1;j=i;j++)
{
coutcomputeTriangleElement(i,j)' ';
}
coutendl;
}
}
int computeTriangleElement(int level,int index)
{
if(index==1||index==level)
return 1;
return computeTriangleElement(level-1,index-1)+computeTriangleElement(level-1,index);
}
int main()
{
int level;
cout"请输入杨辉三角的高度:"endl;
cinlevel;
yanghuiTriangle(level);
return 0;
}
队列输出直角杨辉三角
#include stdio.h
#include stdlib.h
#include malloc.h
#define ERROR 0
#define OK 1
#define OVERFLOW -1
#define MAX_QUEUE 100
typedef int DataType;
typedef struct
{
DataType elem[MAX_QUEUE];
int front;
int rear;
}LinkQueue;
int InitQueue(LinkQueue *);
void EnQueue(LinkQueue *,DataType);
void DeQueue(LinkQueue *,DataType *);
void GetFront(LinkQueue,DataType *);
int QueueEmpty(LinkQueue);
void YangHuiTriangle(int );
int main()
{
int n=1;
printf("please enter a number: ");
scanf("%d",n);
if(n=0)
{
printf("ERROR!\n");
exit(0);
}
YangHuiTriangle(n);
return 0;
}
int InitQueue(LinkQueue *Q)
{
Q-front=Q-rear=-1;
return 1;
}
void EnQueue(LinkQueue *Q,DataType e)
{
if((Q-rear+1)%MAX_QUEUE==Q-front)
exit(OVERFLOW);
else
{
Q-rear=(Q-rear+1)%MAX_QUEUE;
Q-elem[Q-rear]=e;
}
}
void DeQueue(LinkQueue *Q,DataType *e)
{
if(QueueEmpty(*Q))
{
printf("queue is empty\n");
exit(0);
}
else
{
Q-front=(Q-front+1)%MAX_QUEUE;
*e=Q-elem[Q-front];
}
}
void GetFront(LinkQueue Q,DataType *e)
{
if(QueueEmpty(Q))
{
printf("queue is empty\n");
exit(0);
}
else
*e=Q.elem[(Q.front+1)%MAX_QUEUE];
}
int QueueEmpty(LinkQueue Q)
{
if(Q.front==Q.rear)
return 1;
else
return 0;
}
void YangHuiTriangle(int n)
{
LinkQueue Q;

推荐阅读