优秀的编程知识分享平台

网站首页 > 技术文章 正文

C++编程实战:二维数组应用之打印杨辉三角形

nanyue 2024-09-15 23:22:29 技术文章 4 ℃

题目描述

找出杨辉三角形的规律,并根据输入n(1≤n≤100)总行数,输出对应的数字图形(先生成再输出,每个数据所占场宽为4)。

算法分析:杨辉三角的规律为:左右两边数字均为1,每行数字左右对称,第n行的数字有n项,由1开始逐渐变大,中间的每个数均等于它上方两数之和。

参考程序:

#include<bits/stdc++.h>
using namespace std;
const int MAXN=101;
int main() 
{
	int m;
	cin>>m;
	int yh[MAXN][MAXN];
	for(int i=1;i<=m;i++)
	{
	  for(int j=1;j<=i;j++)//每行有i项
	  {
	    if(j==1||i==j)//通项公式
		  yh[i][j]=1;
		else
		  yh[i][j]=yh[i-1][j-1]+ yh[i-1][j]; //通项公式		  	 
	  }
	}
	for(int i=1;i<=m;i++)
	{
		for(int j=1;j<=i;j++)
		{
			cout<<setw(4)<<yh[i][j];
		}
		cout<<endl;
	}
	return 0;
}

输入12程序运行结果如下:

Tags:

最近发表
标签列表