用c语言输出杨辉三角,要求是10行,并且是等腰三角形。

2025-03-20 12:08:31
推荐回答(3个)
回答1:

#include
int main() {
int a[10][10];
int i,j;
for(i=0;i<10;i++)
{ a[i][0]=1;
a[i][i]=1;
}
for(i=2;i<10;i++)
for(j=1;ja[i][j]=a[i-1][j-1]+a[i-1][j];
for(i=0;i<10;i++)
{
for(j=0;j<=i;j++)
printf("%d ",a[i][j]);
printf("\n");
}
return 0;
}
主要就是应用多个循环嵌套来实现,需要认真考虑什么时候用循环嵌套。

回答2:

#include "stdio.h"
#define N 10
int main()
{
int a[N][N],i,j,k;
for(i=0;i {
for(k=0;k<=N-i;k++)
printf("  ");
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];
printf("%2d  ",a[i][j]);
      }
      printf("\n");
}
return 0;
}

回答3:

public static void printTrigon(){
int[][] a = new int[10][10];//定义一个二维数组,用来打印十层的杨辉三角
for(int i = 0; i < 10; i++) {
a[i][i] = 1;//首尾都是1,利用for循环,打印出边界值
a[i][0] = 1;
}
/*从第三层开始,等于肩部的两边值相加*/
for(int i=2; i<10; i++) {
for(int j=1; ja[i][j] = a[i-1][j-1] + a[i-1][j];
}
}
/* 空格符 控制输出杨辉三角*/
for(int i=0; i<10; i++) {//外循环控制行数
for(int k=0; k<2*(10-i)-1; k++) {//内循环控制列数,每列逐渐减少
System.out.print(" ");
}
for(int j=0; j<=i; j++) {
System.out.print(a[i][j] + " ");
}
System.out.println();
}
}