刚学编程不久的新人,想请大家来看看怎么解决.
现在有一个二维数组a,是7行5列:
{0,0,0,0,0},
{1,1,0,1,0},
{1,0,0,1,1},
{1,0,0,0,1},
{1,1,0,2,2},
{2,1,0,2,2},
{2,2,2,2,2}.
由于最后一列有0,1,2三种不同的值,以0结尾的有2行,以1结尾的有2行,以2结尾的有3行。我想得到一个一维数组b,要求数组b的长度为3,b[0]=2,b[1]=2,b[2]=3 ; 如何写这个函数(方法)?
我写了个,但数组越界,怎么改?
//////////////////////////////
int[] b = new int[7] {0,0,0,0,0,0,0}; 
        int classNumber = 1;
        for (int i = 0, j = 0; i < a.Length || j <= a.Length - 1; i++, j++)
        {
            
            int objNumber = 1;
            while (j < a.Length)
            {
                
                if(a[j][4] != a[j + 1][4])
                {
                    break;
                }
                else
                    objNumber++;
                    j++;
                
            }
            b[i] = objNumber;
            classNumber++;
        }
        b = new int[classNumber];
Console.WriteLine("数组b的元素:");
foreach (int k in b)
{
Console.WriteLine("{0,3:d}",k);
}