要实现打印杨辉三角,首先需要考虑到使用二维数组来实现存储每行要输出的元素。同时,利用杨辉三角的特性,arr[i][j]=arr[i-1][j-1]+arr[i-1][j];具体的程序如下面所示:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdlib.h>
#include <stdio.h>
int main()
{
int arr[10][10];
int i=0;
int j=0;
int k=0;
for(i=0;i<10;i++) //计算杨辉三角每个位置上的值
{
arr[i][0]=1;
arr[i][i]=1;
}
for(i=2;i<10;i++)
{
for(j=1;j<i;j++)
{
arr[i][j]=arr[i-1][j-1]+arr[i-1][j];
}
}
for(i=0;i<10;i++) //输出杨辉三角
{
for(j=0;j<=i;j++)
{
printf("%4d",arr[i][j]);
}
printf("\n");
}
system("pause");
return 0;
}
注:上面的程序是用vs 2008编写。
转载于:https://blog.51cto.com/10740590/1703835