码迷,mamicode.com
首页 > 其他好文 > 详细

打印十行杨辉三角

时间:2015-10-14 21:58:10      阅读:250      评论:0      收藏:0      [点我收藏+]

标签:c语言、杨辉三角

------------------------------------------------------------------------------------------------------

打印出杨辉三角,可以根据它其中的一条性质来作为思想的入口:第i行的第j个数等于第i-1行的第j-1位加上第j位数,即a[i][j]=a[i-1][j-1]+a[i-1][j]。

------------------------------------------------------------------------------------------------------

 

C语言代码如下:

# include <stdio.h>
# include <stdlib.h>
# include <string.h>

int main()
{
     int arr[10][10]={{1}};
     int line, row,space;
     for (line = 0; line < 10; line++)
     {
          for (row = 0; row <=line; row++)
          {
               if (line < 2)                            //前两行为1
               {
                    arr[line][row] = arr[0][0];
               }
               else if (row == 0 || row == line)        //首尾元素为1
               {
                    arr[line][row] = arr[0][0];
               }
               else                                     //利用性质赋值
               {
                    arr[line][row] = (arr[line - 1][row - 1] + arr[line - 1][row]);
               }
           }
     }
     
     for (line = 0; line < 10; line++)              //输出
     {
          for (row = 0; row <= line; row++)
          {
               printf("%3d ", arr[line][row]);
          }
      printf("\n");
 }
 
     system("pause");
     return 0;
}

----------------------------------------------------------------------------------------

干货小知识: 1.有符号值的右移位操作是不可移植的。

             2.移位操作的值不能为负值。

             3.表达式的求值顺序 一部分是由它所包含的操作符的优先级和结合性决定,(优先级

              大于结合性);同样,有些表达式的操作数在求值过程中可能需要转换为其他类型,

              (“隐式类型转换”和“算术转换”)。

 

----------------------------------------------------------------------------------------

 

本文出自 “无名小卒” 博客,请务必保留此出处http://814193594.blog.51cto.com/10729329/1702895

打印十行杨辉三角

标签:c语言、杨辉三角

原文地址:http://814193594.blog.51cto.com/10729329/1702895

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!