数组练习题2

1、
题目:打印杨辉三角的前n行
注: 杨辉三角的本质是它的两条斜边都是1,其余数则等于它肩上的两个数之和
如:
1
11
121
1331
14641
思路:计算杨辉三角的时候1、先定义第一列的值为1
2、定义对角线上的值为1
3、根据某项值 = 其前一行前一列的值 + 前一行同一列的值

void func(int n)
{
   int arry[n][n];
   for(int i = 0;i<n;i++)
   {
      for(int j = 0;j<=i;j++)
      {
        if(j==0||j==i)
        {
               arry[i][j] = 1;//第一列或者对角线的值为1
        }else{
               arry[i][j] = arr[i-1][j-1]+arry[i-1][j]//其余值
        }
      }
   }
  for(int i = 0;i<n;i++)
  {
    for(int j = 0;j<=i;j++)
    {
     printf("%4d",arry[i][j])
    }
  }
}
发布了29 篇原创文章 · 获赞 8 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_42542969/article/details/104400679