1

我正在尝试在一系列数字上交替加减。在本系列中,该过程在加法和减法之间交替。例如,如果您的目标数字是 5,则系列为 1 + 2 - 3 + 4 - 5 或 -1。

我正在使用如果数字是奇数则添加的逻辑,如果数字是偶数则减去。我正在使用模运算符来确定数字是否是偶数。如果变量 results = 0,我的逻辑似乎不起作用。任何帮助将不胜感激。

这是我的代码:

 private void alturnating_Input()
    {
        int numberEntered = int.Parse(txtenterNumber.Text);
        int results = 1;
        int i = 0;
        int even = 0;
        for (i = 1;  i < numberEntered; i++)
            even = i % 2;
            if (even != 0)
              results = results + i;
            else
              results = results - i;
        txtAlternating.Text= results.ToString();  


    }

我正在使用 Visual Studio Pro C# 2012。

谢谢你。我非常感谢您的帮助。

4

2 回答 2

1

如果你的 for 循环体中有不止一行,你必须使用花括号

for (i = 1;  i < numberEntered; i++)
{
     even = i % 2;
     if (even != 0)
        results = results + i;
     else
       results = results - i;
}
于 2014-07-27T23:20:45.293 回答
0

您的缩进具有误导性。您的 for 循环中只有一个语句。正确缩进,您的代码如下所示:

for (i = 1;  i < numberEntered; i++)
    even = i % 2;
if (even != 0)
    results = results + i;
else
    results = results - i;

你的意思可能是这样的:

for (i = 1;  i < numberEntered; i++) 
{
    even = i % 2;
    if (even != 0)
        results = results + i;
    else
        results = results - i;
}        
于 2014-07-27T23:20:41.523 回答