Home »
.Net »
C# Programs
C# | different types of two dimensional array declarations
Learn, how to declare a two dimensional array using different styles in C#?
Submitted by Pankaj Singh, on December 25, 2018 [Last updated : March 19, 2023]
In the below example, we are declaring an integer array (two dimensional) with following styles:
1) Two dimensional Array declarations with initialization (without array size)
Example:
int[,] arr1 = {
{1,2,3,4 },
{11,22,33,44}
};
In this style, arra1 will automatic occupy the size of the array (row and columns) based on given elements.
2) Dynamic Two dimensional Array declarations with fixed sizes
Example:
int[,] arr2 = new int[2, 5];
In this style, arr2 will occupy the size for 2 rows and 5 columns (Integers) dynamically.
3) Dynamic Two dimensional Array declarations with variable sizes
Example:
int[,] arr3 = new int[rows,cols];
In this style, we will read the size of the rows and cols for arr3 first and then declare the array dynamically.
Example: In the below given example – we are using these 3 styles to declare a two dimensional array.
C# program for different types of two-dimensional array declarations
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Arrays2 {
class Program {
static void Main(string[] args) {
//Multi Dimension
Console.WriteLine("Type 1 : Declaration");
int[, ] arr1 = {
{1, 2, 3, 4},
{11, 22, 33, 44}
};
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 4; j++) {
Console.Write("{0}\t", arr1[i, j]);
}
Console.WriteLine();
}
Console.WriteLine("\n\nType 2 : Declaration");
int[, ] arr2 = new int[2, 5];
Console.WriteLine("Enter {0} values:", 2 * 5);
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 5; j++) {
arr2[i, j] = Convert.ToInt32(Console.ReadLine());
}
}
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 5; j++) {
Console.Write("{0}\t", arr2[i, j]);
}
Console.WriteLine();
}
Console.WriteLine("\n\nType 3 : Declaration");
Console.Write("Enter Rows :");
int rows = Convert.ToInt32(Console.ReadLine());
Console.Write("Enter Cols :");
int cols = Convert.ToInt32(Console.ReadLine());
int[, ] arr3 = new int[rows, cols];
Console.WriteLine("Enter {0} values:", rows * cols);
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
arr3[i, j] = Convert.ToInt32(Console.ReadLine());
}
}
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
Console.Write("{0}\t", arr3[i, j]);
}
Console.WriteLine();
}
Console.ReadKey();
}
}
}
Output
Type 1 : Declaration
1 2 3 4
11 22 33 44
Type 2 : Declaration
Enter 10 values:
10
10
10
20
20
20
30
30
30
40
10 10 10 20 20
20 30 30 30 40
Type 3 : Declaration
Enter Rows :2
Enter Cols :3
Enter 6 values:
1
1
1
9
9
9
1 1 1
9 9 9
C# Basic Programs »