【发布时间】:2019-06-10 00:52:42
【问题描述】:
从数组中查找最大值时,我为什么要在 if 块之外键入 i++?
int[] x = new int[] { 5, 7, -100, 400, 8 };
int i = 1;
int max;
max = x[0];
while (i < x.Length)
{
if (x[i] > max)
{
max = x[i];
}
i++;
}
Console.WriteLine("MAX="+max);
【问题讨论】:
-
谁/你应该说什么?
-
因为否则,如果索引 i 处的值恰好大于
max(如果它位于if块内),您只会增加i。我们希望在每次迭代时增加它。 -
或者只是用
Console.WriteLine("MAX="+(new[] { 5, 7, -100, 400, 8 }.Max());替换整个东西 -
为什么你认为它应该在
if里面? -
忽略负面因素。他们没有任何意义。如果你学到了一些新东西,今天是美好的一天!
标签: c# arrays if-statement while-loop max