.写一个凼数,打印一个如下的n x n的矩阵
例如:
n = 5
1 1 1 1 1
1 2 3 2 1
1 3 6 3 1
1 2 3 2 1
1 1 1 1 1
n = 6
1 1 1 1 1 1
1 2 3 3 2 1
1 3 6 6 3 1
1 3 6 6 3 1
1 2 3 3 2 1
1 1 1 1 1 1
提示: 除了边上的元素,每个元素都是由边上的某两个元素相加得到的
void AddMatrix(int n);
#include<iostream>
using namespace std;
void AddMatrix(int n)
{
int **a = new int *[n];
for (int i = 0;i < n;i++)
{
a[i] = new int[n];
}
int row;
if (n%2)
{
row = n/2;
}
else
{
row = n/2-1;
}
for (int i = 0;i < n;i++)
{
for (int j = 0;j < n;j++)
{
if ((i == 0)||(i == n-1)||(j == 0)||(j == n-1))
{
a[i][j] = 1;
}
}
}
for (int i = 0;i < n;i++)
{
for (int j = 0;j < n;j++)
{
if ((i == 0)||(i == n-1)||(j == 0)||(j == n-1))
{
;
}
else
{
if (i <= row)
{
if (j <= row)
{
a[i][j] = a[i-1][j] + a[i][j-1];
}
else
{
a[i][j] = a[i][n-1-j];
}
}
else
{
a[i][j] = a[n-1-i][j];
}
}
}
}
for (int i = 0;i < n;i++)
{
for (int j = 0;j < n;j++)
{
cout<<a[i][j]<<" ";
}
cout<<endl;
}
for (int i = 0;i < n;i++)
{
delete []a[i];
}
}
void main()
{
AddMatrix(5);
system("pause");
}