【发布时间】:2014-03-03 18:42:49
【问题描述】:
我被卡住了,我正在尝试编写一个代码来显示我的索引中的第一个正奇数。 由于某种原因,它没有这样做。它只显示我索引中的第一个数字。我究竟做错了什么。我是新人,所以如果你能帮助我,我非常感谢。另外,如果你能保持也很简单,谢谢。
static void Main(string[] args)
{
int[] A = { -2, 5, -1, 9, -6, 23, 67, 1, -8, 7, -3, 90 };
int index = FirstPosOddNum(A);
if (index >= 0)
{
Console.WriteLine("The first Positive value is: {0}, In Index {1}",
A[index], index);
}
else
{
Console.WriteLine("No positive odd value available.");
}
Console.ReadLine();
}
static int FirstPosOddNum(int[] array)
{
for (int i = 0; i < array.Length; i++)
{
if ((array[i] % 2 == 1) || (array[i] % 2 == -1))
return i;
}
return -1;
}
【问题讨论】:
-
为我工作:“第一个正值是:5,在索引 1 中”
-
顺便说一句,您的
FirstPosOddNum函数也会找到一个不符合您要求的负奇数。 -
提示如何解决这个问题:
(negative odd number) % 2 == -1和(positive odd number) % 2 == 1 -
您确定您不认为
Index 1是“第一个”数字吗? -
请不要在问题标题中包含有关所用语言的信息,除非没有它就没有意义。标记用于此目的。