问题描述:
在屏幕上打印杨辉三角
输出样例:
1
1 1
1 2 1
1 3 3 1
问题分析:
方法一:
1、使用二维数组形成行和列;
2、data[i][j] = data[i-1][j-i] + data[i-1][j];//核心公式
3、按格式打印。
方法二:
双重循环控制行和列,按照每一层去打印。
源代码:
方法一:使用二维数组
#include <stdio.h>
#include <windows.h>
#define N 5
//使用二维数组
int main()
{
int data[N][N];
int i, j, k;
data[0][0] = 1;
data[1][0] = 1;
data[1][1] = 1;
for (i = 1; i < N; i++)
{
for (j = 0; j < i + 1; j++)
{
if (j == 0 || j == i)
{
data[i][j] = 1;
}
else
{
data[i][j] = data[i - 1][j - 1] + data[i - 1][j];
}
}
}
//打印
printf("