【C/C++】解密杨辉三角
2016-07-05 10:12
281 查看
一、杨辉三角
所谓杨辉三角,就是下面这个图形通过找规律可以发现,除了每一行的第一个和最后一个是1以外
其余的数都是通过上一行的两个数相加得到的
二、程序分析
①定义一个二维数组。
并向里面按照规律赋元素,最后打印输出②需要利用for循环进行赋值
除了1之外 其余赋值方法用 a[i][j] = a[i-1][j-1]+a[i-1][j]; //i为行数,j为列数③封装函数注意
参数传递的时候切记维数必须给出三、杨辉三角代码块
(1)普通版
#include<stdio.h> int main() { int a[10][10] = {0}; int i = 0; int j = 0; for(i = 0; i<10 ;i++) { a[i][0] = 1; for(j = 1; j<i ;j++) { a[i][j] = a[i-1][j-1]+a[i-1][j]; } a[i][i] = 1; } for(i = 0; i<10 ;i++) { for(j = 0; j<=i ;j++) { printf("%3d ",a[i][j]); } printf("\n"); } return 0; }
(2)封装函数
#include<stdio.h> void print(int a[][10]) { int i = 0; int j = 0; for(i = 0; i<10 ;i++) { for(j = 0; j<=i ;j++) { printf("%3d ",a[i][j]); } printf("\n"); } } int main(void) { int a[10][10] = {0}; int i = 0; int j = 0; for(i = 0; i<10 ;i++) { a[i][0] = 1; for(j = 1; j<i ;j++) { a[i][j] = a[i-1][j-1]+a[i-1][j]; } a[i][i] = 1; } print(a); return 0; }
四、小结
二维数组传递的时候必须指定形参,否则将出现错误
相关文章推荐
- Lua中使用二维数组实例
- C#使用二维数组模拟斗地主
- C语言打印杨辉三角示例汇总
- C#二维数组基本用法实例
- javascript的日期对象、数组对象、二维数组使用说明
- C语言小程序 杨辉三角示例代码
- PHP 如何获取二维数组中某个key的集合
- 改写函数实现PHP二维/三维数组转字符串
- java 二维数组矩阵乘法的实现方法
- Swift中定义二维数组的方法及遍历方法示例
- 举例理解C语言二维数组的指针指向问题
- C#和Java中二维数组区别分析
- php去除二维数组的重复项方法
- php对二维数组进行相关操作(排序、转换、去空白等)
- php将一维数组转换为每3个连续值组成的二维数组
- PHP中使用foreach()遍历二维数组的简单实例
- php对二维数组按指定键值key排序示例代码
- PHP按指定键值对二维数组进行排序的方法
- PHP将二维数组某一个字段相同的数组合并起来的方法
- js二维数组定义和初始化的三种方法总结