#include
#include
using namespace std;
int* YangHuiData(int n); //n是杨辉三角形的行数
void YangHuiShow(int *pData,int n);//在屏幕上打印杨辉三角形
int main() {
int n
cout<<”请输入杨辉三角形的行数”<
cin>>n
//计算杨辉三角并保存到二维数组
int *pData = YangHuiData(n);
//在屏幕上打印等腰三角形的杨辉三角
YangHuiShow(pData,n);
//n是杨辉三角形的行数
int* YangHuiData(int n){
int *a = new int[n*n];
//完成杨辉三角形的计算,没有显示的位置填0
return a;
}
void YangHuiShow(int *a,int n){
//根据数据a指向的二维数组在屏幕上打印
//杨辉三角形,每行前面填充合适的空格
//以显示成等腰三角形,左右对称
}
下面是普通的杨辉三角程序
#include
#include
using namespace std ;
#define N 200
int main()
{
int a[N][N]={{1},{1,1}};
int i,j,n;
cout << "input n: ";
do { cin >> n; }while(n>=N); //防止越界
for(i=2;i<n;i++) //数组赋值
{
a[i][0]=1;
a[i][i]=1;
for( j=1;j<i;j++ )
a[i][j]=a[i-1][j-1]+a[i-1][j];
}
for( i=0;i<n;i++ )
{
for( j=0;j<n-i-1;j++ )
cout << setw(3) << " " ;//前导空格,为单个数据的一半宽度
for( j=0;j<=i;j++ )
cout << setw(6) << a[i][j] ;
cout<<endl;
}
}
我想知道如何通过上述题目手段完成杨辉三角