【发布时间】:2014-03-28 12:18:20
【问题描述】:
我正在尝试使这个循环工作,所以它会一直询问一个数字,直到用户输入 999。但是使用这个版本的代码,它不会说我不能在循环中声明 num,因为我在这个范围内赋予它不同的含义。
使用 try 和 catch 是因为我对这段代码的分配规则。
int num;
while (num != 999)
{
Console.WriteLine("Enter a number between 0 and 99");
string input = Console.ReadLine();
try
{
int num = Convert.ToInt32(input);
Console.WriteLine("This is element number " + num + " : " + randNums[num]);
}
catch
{
Console.WriteLine("Data inputted is not between 0 and 99");
}
}
Console.WriteLine("You chose the secret value, well done!");
【问题讨论】:
-
只需删除第二个
num前面的int -
双重声明...
-
以及使用未初始化的变量 num.....
-
在第一行中,
num变量应该在使用之前被初始化为某个值。即使这不是问题,我认为编译器会抱怨
标签: c# variables loops while-loop scope