【发布时间】:2021-11-30 04:25:40
【问题描述】:
所以,我有这个学校分配,但我做不到。 我应该制作一个矩形数组,大小由用户定义,然后我必须打印数组中的所有值。 它应该看起来像这样:
这是我目前的代码 (on github):
static void Main(string[] args)
{
Console.WriteLine("Ingrese un número entero: ");
int userValue = int.Parse(Console.ReadLine()); //el número ingresado por el usuario es guardado en una variable
if (userValue <= 10 && userValue > 0) //valida que el número ingresado sea igual o menor a 10 y mayor que 0
{
int[,] rectArray = new int[userValue,userValue]; //la variable que registra el número dado por el usuario es usada para definir el tamaño del arreglo
Console.WriteLine("Los valores del arreglo son:");
for (int file = 0; file < rectArray.GetLength(0); file++)
{
if (file > 0) {Console.WriteLine(" " + file);}; //Se utiliza un condicional para evitar que se imprima la primer línea con valor de 0
for (int column = 0; column < rectArray.GetLength(1); column++)
{
int colValue = column + file + 1;
Console.Write(" " + colValue );
};
};
Console.ReadKey();
}
else
{
Console.WriteLine("El valor necesita ser igual o menor a 10.");
Console.ReadKey();
};
}
【问题讨论】:
-
请edit 并在问题中添加代码AS TEXT。 Why not upload images of code/errors when asking a question?
-
你在哪里卡住了?
-
约翰尼,图像是终端输出。它应该为每个文件和列打印 1 2 3 4 5 6 7 等。
-
第一个建议,填充你的数组,然后打印出数组。它会简单得多.. 其次,您已经在第一个循环中跟踪行。所以只需删除
if (file > 0) {Console.WriteLine(" " + file);};并在第二个循环之后(第22 行之后)添加console.writeline(),最后你的第二个循环应该从1 开始。所以你不需要column + file + 1,而是列+文件就足够了。 -
加分的附注 ;) 如果您使用
int.TryParse而不是int.Parse,您可以在用户执行不需要的操作(例如输入文本)时防止未处理的异常
标签: c# arrays multidimensional-array