杨辉三角(C语言)

该程序使用C语言编写,通过宏定义N来控制打印行数,实现了一个居中打印的斐波那契数矩形。程序首先初始化一个二维数组,然后通过两层循环结构进行打印。在奇数行时会额外添加空格,数组元素的计算基于斐波那契数列的规则,即每个元素等于上一行的前两个元素之和。
摘要由CSDN通过智能技术生成

打印二十行

#include <stdio.h>

#define N 20    //宏:使N替代10   这个程序里面是打印的行数

int main()
{
	int i = 0, j = 0;    //二维数组的行和列。i:行,j:列
	int m = 0, n = 0;    //m:存储打印数组元素,n:打印空格
	int sz[N][N] = {0};  //定义数组,并初始化

	for(i = 0; i < N; i++)    //打印N行
	{
		for(n = 0; n < (N-i)/2; n++)  //居中打印空格
		{
			printf("      ");
		}
		if(i%2 != 0)    //当打印到奇数行时多打印两个空格
		{
			printf("   ");
		}
		for(j = 0; j <= i; j++)    //打印的列与行数相同
		{
			if((i == j)||(j == 0))    //当行列相等时打印 1 ,当列为第一列打印 1 。
			{
				m = 1;
				sz[i][j] = m;
			}

			else                      //剩下的行列,为上一行上一列加上一行同一列的值
			{
				sz[i][j] = sz[i-1][j-1] + sz[i-1][j];
				m = sz[i][j];
			}
			printf("%5d ", m);        //将行列的元素打印出来

		}
		printf("\n");    //每行结束跳到下一行继续打印
	}

	return 0;
}

下面是打印20行的结果。 

 

 如果你的显示器允许,你想打印多少行都行,只需要改变#define N 20 的20。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

悟小道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值