c#编程求助

来源:百度知道 编辑:UC知道 时间:2024/05/16 08:31:23
已知一个数组,记为a吧,其内元素有些为空值。要求输出一个新数组b,该数组特点为:只要a的第一个元素为空,后面的各元素依次向前移动一个位置,直到数组的第一个元素不在为空为止,得到的新数组记为b。想了半天不知道如何for循环,请大虾帮忙。

b不可能已定义好,因为b的长度不确定。

你也没说什么类型,只能定义object数据。

//函数参数是数组a,返回相应的数组b,如果a的元素全部是空,返回的b也是空(null)。

static object[] Parse(object[] a)
{
object[] b = null;
if (a != null)
{
for (int i = 0; i < a.Length; i++)
if (a[i] != null)
{
b = new object[a.Length - i];
for (int j = i; j < a.Length; j++)
b[j - i] = a[j];
}
}
return b;
}

int j = 0;
for(int i = 0;i < a.length;i++)
{
if(a[i] != null)
{
b[j] = a[i];
j++;
}
}
大致就是这样的,呵呵

----------------------------------
晕死。。才发现和一楼的一样。。

// 非常简单
// 假设已经定义好数组a,b

int j=0
for (int i=0; i<a.Length; i++)