您的位置:首页 > 编程语言 > C语言/C++

【C语言小练习】找出给定的底边长度为5的三角形的矩阵,找规律,输出底边长度为10的三角形矩阵。

2010-12-07 00:33 465 查看
【C语言小练习】找出给定的底边长度为5的三角形的矩阵,找规律,输出底边长度为10的三角形矩阵。

  1    3    6   10   15
  2    5    9   14
  4    8   13
  7   12
 11

 

此题一共4种解法,按难度分级:

 

基础解法:数组。思路是直接构造一个数组,一个一个赋值就行了。
中级解法:变量递增。思路是,分别找出行和列间的递推关系,然后用变量记录,一个一个输出。
高级解法:双公式。思路是,把中级解法找到的两个递推关系,分别求出行与列的通项公式。
超级解法:单公式。思路是,把高级解法的两个一维通项公式,合并成一个二维矩阵通项公式。

 

 

我只给出超级解法。剩下3种简单的就不写了。 

 

#include <stdio.h>
#include <conio.h>
int main( void ){
unsigned int len=10,y=0,x=0;
for(y=1; y<=len; y++){
for(x=1;x<=len-y+1; x++){
printf( "%3d  ", ((x+y)*(x+y-1)/2-y+1));
}
printf("/r/n");
}
_getch();
return 0;
}


 

 

输出:

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

1    3    6   10   15   21   28   36   45   55
2    5    9   14   20   27   35   44   54
4    8   13   19   26   34   43   53
7   12   18   25   33   42   52
11   17   24   32   41   51
16   23   31   40   50
22   30   39   49
29   38   48
37   47
46
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  语言 c
相关文章推荐