0
点赞
收藏
分享

微信扫一扫

【C语言练习】杨辉三角

非常帅气的昵称吧 2022-03-19 阅读 60
c语言

题目:输入n行的杨辉三角

杨辉三角在我们的生活并不陌生,杨辉三角动态图如下:

1、杨辉三角形式一

#include<stdio.h>
#define M 30
void Print_yanghui_triangle(int n)
{
	int arr[M][M] = { 0 };
	int i, j;
	for (i = 0; i < n; i++)//打印每行的第一个数1和最后一个数1
	{
		arr[i][0] = 1;
		arr[i][i] = 1;
	}
	for (i = 2; i < n; i++)//填充剩余的数
	{
		for (j = 1; j < n; j++)
		{
			arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];
		}
	}
	for (i = 0; i < n; i++)//填完打印
	{
		for (j = 0; j <= i; j++)
		{
			printf("%-4d", arr[i][j]);
		}
		printf("\n");
	}
}

int main()
{
	int n = 0;
	printf("请输入打印的行数:");
	scanf("%d", &n);
	Print_yanghui_triangle(n);

	return 0;
}

结果如下:

 2、杨辉三角形式二


#include<stdio.h>
#define M 30
void Print_yanghui_triangle(int n)
{
	int arr[M][M] = { 0 };
	int i, j;
	for (i = 0; i < n; i++)//打印每行的第一个数1和最后一个数1
	{
		arr[i][0] = 1;
		arr[i][i] = 1;
	}
	for (i = 2; i < n; i++)//填充剩余的数
	{
		for (j = 1; j < n; j++)
		{
			arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];
		}
	}
	for (i = 0; i < n; i++)//填完打印
	{
		for (j = n; j > i ; j--)
		{
			printf("  ");
		}
		for (j = 0; j <= i; j++)
		{
			printf("%-4d", arr[i][j]);
		}
		printf("\n");
	}
}

int main()
{
	int n = 0;
	printf("请输入打印的行数:");
	scanf("%d", &n);
	Print_yanghui_triangle(n);

	return 0;
}

 结果如下:

 最后,文章结束。

举报

相关推荐

0 条评论