变量dos';t存在于for循环中的当前上下文中
本文关键字:循环 上下文 for dos 存在 变量 | 更新日期: 2023-09-27 18:24:54
这可能是一件显而易见的事情,可能会让我得到一部分反对票,但。。。Visual Studio告诉我int i
不存在于if/else
语句的当前上下文中。这是怎么回事?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace LongSequence
{
class Program
{
static void Main()
{
int numberToPrint;
for (int i = 2; i <= 1000; i++);
{
if (i % 2 == 0)
numberToPrint = i;
else
numberToPrint = i *(-1);
Console.WriteLine(numberToPrint);
}
}
}
}
for (int i = 2; i <= 1000; i++);
由于;
,此循环没有正文。所以它什么都没做。因此,您的其他代码被视为另一条语句,它在循环的范围之外,在循环中创建了变量i
。
For
循环不应该有终止,在您的代码中,它会给出一个错误,因为它在那里终止。所以i的值在那之后就没有定义了,把它改成下面的样子
for (int i = 2; i <= 1000; i++)
{
if (i % 2 == 0)
numberToPrint = i;
else
numberToPrint = i *(-1);
Console.WriteLine(numberToPrint);
}