| 
 
TA的每日心情|  | 开心 2014-6-18 08:29
 | 
|---|
 签到天数: 14 天 [LV.3]偶尔看看II 滴水大师  
 
 
	积分2345 
 | 
 
| 题目 
  
 解决代码及点评
 
 
 
 
 <pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"></pre><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code"><pre code_snippet_id="91880" snippet_file_name="blog_20131202_1_2646179" class="cpp" name="code">/************************************************************************/  /*  9.  打印如下形式的杨辉三角形   1 1   1 1   2   1 1   3   3   1 1   4   6   4   1 1   5   10  10  5   1 输出前10行,从 0行开始,分别用一维数组和二维数组实现  */  /************************************************************************/  #include <stdio.h>  #include <stdlib.h>  #include <math.h>        void main()  {      int arr[10][10]={0};      for (int i=0;i<10;i++)//赋值,杨辉三角主要是需要我们发现杨辉三角的规律,就是arr[j] = arr[i-1][j-1]+arr[i-1][j],也就是说某行某列的值,等于它上一行的同列,以及前一列的值之和      {          for (int j=0;j<=i;j++)          {              if (j==0||i==j) // 这两个条件都是杨辉三角的边上,直接赋值即可              {                  arr[j]=1;              }              else                  arr[j]=arr[i-1][j-1]+arr[i-1][j]; // 中间部分则用算法计算              printf("%6d",arr[j]);          }          printf("\n");      }          system("pause");  }</pre><br><br></pre>  
 
 
 | 
 |