杨辉三角——2019版本

本文详细介绍了一段用C语言编写的杨辉三角程序,通过核心公式a[i][j]=a[i-1][j-1]+a[i-1][j]展示了如何递归计算三角形中每个位置的数值。从初始化、边界条件到核心计算逻辑,适合理解动态规划在数组问题中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

杨辉三角

在这里插入图片描述

#include<stdio.h>
int main(void) 
{
	int n, j, a[100][100];
	int i;
	while (scanf_s("%d", &n), n != 0) 
	{
		for (i = 0; i < n; i++) //确定行数“n”;
		{
			for (j = 0; j <=i; j++)//确定每行有多少个数字;
			{
				if (j == 0 || i == j)//确定开头和结尾的数为1;
				{
					a[i][j] = 1;
				}
				else//核心语句;
					a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
			}
		}
		for (i = 0; i < n; i++) 
		{
			for (j = 0; j <= i; j++) 
			{
				printf("%d", a[i][j]);
				if (j != i)
					printf(" ");
			}
			printf("\n");
		}
		printf("\n");
	}
	return 0;
}
  • 核心说明:
  • a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
  • 除了开头和结尾,中间的数都是由上一行的上一个下表数和下一个下表数的和。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值