如何从for()语句中跳过“0”

时间:2017-04-03 14:12:12

标签: c# for-loop

如何跳过此for()语句中的数字0(零)。我想在-1之后跳过0。

 for(x=min_values; x<= max_values; x++)
 {

 }

我的目标是选择两个文本框之间的每个数字,称为max和min。我试图绘制y = 1 / x函数。但是,当选择0时因为不能有1/0,程序不起作用。

3 个答案:

答案 0 :(得分:4)

&#39;继续&#39;如果给出正确的逻辑条件,关键字将完成您所要求的内容。您提供的示例代码并未说明mix_values或max_values是什么。

for(int x = mix_values; x <= max_values; x++ ) {
     if( x == 0 ) { continue; }
     // ...the rest of your loop body logic goes here...
}

我假设0总是在-1之后(如果min_values&lt; -1)给定x ++。

答案 1 :(得分:0)

for

中尝试此操作
if (x == 0 && lastMinValue  == -1 ){
      continue;
       }
int lastMinValue = x;

答案 2 :(得分:0)

我将假设min_values可能是否定的。你说过:

  

我希望在-1之后跳过0。

在这种情况下,只需在循环体末端递增x,当它为-1时:

for(x=min_values; x<= max_values; x++)
{
    // ...loop body here, then:
    if (x == -1) {
       ++x;
    }
}

在此增量之后,for循环中的那个将开启,下一个x将为1

如果min_values0,我就不会有任何影响,因为你说在 0之后你想跳过-1 ,暗示某种依赖关系。

示例in C# on IDEone,在JavaScript中,在这种情况下(通常不是)与C#的工作方式相同:

&#13;
&#13;
var min_values = -2;
var max_values = 2;
var x;
for (x = min_values; x <= max_values; x++) {
  console.log(x);
  if (x == -1) {
    ++x;
  }
}
&#13;
&#13;
&#13;

当然,如果您只是想跳过0,那么您可以按照您所说的无效的评论中的建议行事:

for(x=min_values; x<= max_values; x++)
{
    if (x == 0) {
        continue;
    }
    // ...loop body here
}

...因为它 工作:示例in C# on IDEone或者再次,在JavaScript中,因为它在这方面的工作方式相同:

&#13;
&#13;
var min_values = -2;
var max_values = 2;
var x;
for (x = min_values; x <= max_values; x++) {
  if (x == 0) {
    continue;
  }
  console.log(x);
}
&#13;
&#13;
&#13;