C语言编程题——杨辉三角

杨辉三角——C语言实现

杨辉三角:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1

由上述举例可知

  1. 每行第一位数和最后一位数都为1;
  2. 其余的数为正上方和左边数之和;

因此,根据已知规律,可以写出如下解决方案:

#include <stdio.h>
//杨辉三角
int main()
{
	int n;
	printf("请输入要打印的行数:");
	scanf("%d",&n);
	int a[100][100];
	for(int i=0;i<n;i++)
	{
		a[i][0]=1;
		a[i][i]=1;    //先将杨辉三角每行的第一个和最后一个赋值为1 
	}
	
	for(int i=2;i<n;i++)      //已知每个数等于它上方两数的之和 
	{
		for(int j=1;j<i;j++)
		{
			a[i][j]=a[i-1][j-1]+a[i-1][j];
		}
	}
	
	
	for(int i=0;i<n;i++)     //打印输出 
	{
		for(int j=0;j<=i;j++)
		{
			printf("%d ",a[i][j]);
		}
		printf("\n");
	}
} 
已标记关键词 清除标记
相关推荐
©️2020 CSDN 皮肤主题: 游动-白 设计师:白松林 返回首页