If you need input in one line, you can do so:
Console.WriteLine("Input first dimension"); string rawFirstDimension = Console.ReadLine(); Console.WriteLine("Input second dimension"); string rawSecondDimension = Console.ReadLine(); int firstDimension; int secondDimension; // ΠΏΡΠΎΠ²Π΅ΠΊΡΠΊΠ° ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π° if (!int.TryParse(rawFirstDimension, out firstDimension) || !int.TryParse(rawSecondDimension, out secondDimension)) throw new Exception("Parsing failed"); var array = new int[firstDimension, secondDimension]; string rawStr = Console.ReadLine(); if (rawStr == null) // ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²Π° Π½Π° ΠΏΡΡΡΠΎΡΡ throw new Exception("Array is empty"); var rawArray = rawStr.Split(' '); // ΠΏΡΠΎΠ²Π΅ΡΠΊΠ° Π½Π° ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΌΠ°ΡΡΠΈΠ²Π° ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠ½ΠΎΡΡΠΈ if(rawArray.Length != firstDimension * secondDimension) throw new Exception("Wrong array size"); for (int i = 0; i < firstDimension; i++) { for (int j = 0; j < secondDimension; j++) { int next; if (int.TryParse(rawArray[i * secondDimension + j], out next)) array[i, j] = next; else throw new Exception("Parsing failed");//Π΅ΡΠ»ΠΈ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π½Π΅ ΡΠΈΡΠ»ΠΎ } } Console.WriteLine("Array is"); for (int i = 0; i < firstDimension; i++) { for (int j = 0; j < secondDimension; j++) Console.Write(array[i, j]); Console.WriteLine(); }