求大佬指导
#include<iostream>
using namespace std;
int main()
{
int numbers;
cin >> numbers;
int** Array;
Array = (int**)malloc(numbers * sizeof(int*));
for (int i = 0; i < numbers; i++)
Array[i] = (int*)malloc(numbers * sizeof(long));
for (int i = 0; i < numbers; i++)
Array[0][i] = i + 1;
for (int i = 1; i < numbers; i++)
{
for (int h = numbers ; h > 0; h--)
{
for (int u = i+1; u < h; u++)
{
Array[i][i] = Array[i - 1][numbers - 1] + 1;
Array[i][u] = Array[i][u - 1] + 1;
}
}
}
Array[numbers - 1][numbers - 1] = Array[numbers - 2][numbers - 1] + 1;
for (int i = 0; i < numbers-1; i++)
{
int k = 1;
k += i;
while (k < numbers )
{
Array[k][i] = Array[i][k-1];
k++;
}
}
for (int i = 0; i < numbers; i++)
{
for (int k = 0; k < numbers; k++)
{
cout << Array[i][k] << " ";
}
cout << endl;
}
for (int i = 0; i < numbers; i++)
free(Array[i]);
free(Array);
return 0;
}
请问一下这一段 为什么 显示段错误; 这是做的题目二