我的代码有点问题:
using static System.Math;
using static System.Convert;
namespace ConsoleApplication1
{
class Program
{
static void Main()
{
int[,] matrice;
for (int i = 1; i <= 5; ++i)
{
for (int j = 1; j <= 4; ++j)
{
if (i == j)
{
matrice[i, j] = ToInt32(Pow((-1), i)) + 1;
}
else if (i > j)
{
matrice[i, j] = ToInt32(Pow((-1), i + j));
}
else
{
matrice[i, j] = j;
}
}
}
}
}
}
我是否必须初始化阵列?我不知道该怎么做......
答案 0 :(得分:1)
要初始化数组很简单,只需创建一个new
数组:
int[,] matrice = new int[6,5];
另外,通过查看如何设置for
循环,您希望标记编号为[1..N],其中N是上限。实际上,C#中的指示始终从零开始,因此当您声明一个数组时,指示来自[0..N-1]。
因此在示例中,我必须在每个上限中添加一个,这样您的代码就不会中断。更理想的选择是将for循环更改为0..N-1,这样就不会有空元素。
答案 1 :(得分:0)
是的,你必须初始化数组。初始化时,您要为阵列分配内存以存储数据