C++打印杨辉三角形

打印出以下的杨辉三角形(要求打印出10行)

1

1   1

1   2   1

1   3   3   1

1   4   6   4   1

1   5  10  10    1

…………


要求打印出10行


杨辉三角形:端点数为1,每个数等于它肩上两个数之和。


#include "stdafx.h"
#include
using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
int array[10][10];        //定义一个10*10的二维数组
int i,j;
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
array[i][j]=0;         //赋初值,使数组的每个元素都为0
}
    }


for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
if(j==0)
{
array[i][j]=1;    //使第一列上每个数都为1
}
}
}


   for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
if(j>0&&i>0&&j<=i)        //这里j要求小于等于i,这样就可以只在三角形中进行需要的运算
{
   array[i][j]=array[i-1][j-1]+array[i-1][j];      //杨辉三角形的特性,一个数等于它肩上两数之和,也就是 array[i][j]=array[i-1][j-1]+array[i-1][j];
}
}
}


for(i=0;i<10;i++)
{
for(j=0;j<=i;j++)       //只输出三角形,而不是整个矩阵 
{
cout<}
cout<}
return 0;
}

你可能感兴趣的:(C++打印杨辉三角形)