我是C#编程语言的新手,我对一个问题很困惑。我有一个for循环,在一个循环中增加两倍,但在每个循环中增加一次。
它省略i++
的原因是什么?
string inValue;
for (int i = 0; i < 10; i++)
{
Console.Write("Enter Score{0}: ", i + 1);
inValue = Console.ReadLine();
}
答案 0 :(得分:3)
++
增量运算符仅增加一个值
for (int i = 0; i < 10; i++)
增加两次:
for (int i = 0; i < 10; i+=2)
{
Console.Write("Enter Score{0}: ", i);
}
了解详情:Increment (++) and Decrement (--) Operators
| If | Equivalent Action | Return value | | variable++ | variable += 1 | value of variable before | | | | incrementing |
以下一行:
Console.Write("Enter Score{0}: ", i + 1);
将i
的值增加加1
,但不会存储到i
。这就像写作:
int b = i+1; // i is not affected. New value never stored back into i
Console.Write("Enter Score{0}: ", b);
以下任何一种方式都会使价值增加2:
//Option 1
for (int i = 0; i < 10; i +=2)
//Option2
Console.Write("Enter Score{0}: ", i++);
//Option3
i = i+1;
Console.Write("Enter Score{0}: ", i);
答案 1 :(得分:2)
i++
表示您只需将i
增加1,或者只需编写代码i = i + 1
即可。因此,如果你想要增加i + 2
的循环,你可以写下这样的代码:
for(int i = 0; i < 10; i += 2)
{
Console.Write("Enter Score{0}: ", i);
inValue = Console.ReadLine();
}
循环将i
增加2。
答案 2 :(得分:0)
(i ++)将i增加1,就像写作一样:i = i + 1。 (i + 1)不会增加i。