A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 王英明 中级黑马   /  2015-4-28 21:32  /  381 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

/*
打印杨辉三角
    1
   1 1
  1 2 1
1 3 3 1
1 4 6 4 1
.......
思路:
A:构造printSanJiao()函数,用于计算和打印杨辉三角
B:主函数调用printSanJiao();传入杨辉三角层数
*/
class YangHuiSanJiao
{
public static void printSanJiao(int num)
{
  //建立二维数组
  int[][] arr = new int[num][];
  //遍历一维数组
  for (int x = 0;x <= num-1 ;x++ )
  {
   //定义二维数组
   arr[x]= new int[x+1];
   //两边都是1
   arr[x][0] = arr[x][x]=1;
   for (int y = 1;y <= x-1 ;y++ )//二维数组的个数是x+1,减去头和尾;y的最大值是y-1
   {
    arr[x][y] = arr[x-1][y-1]+arr[x-1][y];
   }
  }
  //遍历数组进行打印
  for (int x = 0;x <num ;x++ )
  {
   for (int y = 0;y <=x ;y++ )
   {
    System.out.print(arr[x][y]);
   }
   System.out.println();
  }  
}
public static void main(String[] args)
{
  //传递杨辉三角的层数给printSanJiao()函数
  printSanJiao(3);
}
}

2 个回复

倒序浏览
顶~~~~~~~~~~~~~~~~~~
回复 使用道具 举报
ding...........................
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马