В C# для решения вашей задачи можно использовать метод, который проверяет, является ли строка массива null или нет. Двумерный массив в C# может содержать строки, которые еще не инициализированы, что и вызывает ошибку при попытке обращения к таким строкам.
using System;
class Program
{
static void Main()
{
// Инициализация массива массивов (jagged array)
int[][] M = new int[6][];
// Пример заполнения некоторых строк
M[0] = new int[] { 1, 2, 3 };
M[2] = new int[] { 4, 5 };
M[4] = new int[] { 6, 7, 8, 9 };
// Подсчет заполненных строк
int filledRows = 0;
for (int i = 0; i < M.Length; i++)
{
if (M[i] != null)
{
filledRows++;
}
}
Console.WriteLine("Количество заполненных строк: " + filledRows);
// Вывод только заполненных строк
for (int i = 0; i < M.Length; i++)
{
if (M[i] != null)
{
Console.Write("Строка " + i + ": ");
for (int j = 0; j < M[i].Length; j++)
{
Console.Write(M[i][j] + " ");
}
Console.WriteLine();
}
}
}
}