2017-02-18 81 views
0

在我的代码开始时有一点问题。代码如下:do while while循环中当前上下文中不存在名称'dx'

do 
{ 
    Console.Write("x = "); 
    string x = Console.ReadLine(); 
    double dx = Convert.ToDouble(x); 
    Console.Write("X must be bigger than 1."); 
} 
while (dx > 1); 

我想我的程序,要求X,直到它比1.更大的问题是,在代码的一部分时,我得到这个:

名称'dx'在当前上下文中不存在。 我该怎么办?或者整个代码错了?

回答

0

您应该创建dx外循环,因为变量是不可见的外{ }

double dx; 
do 
{ 
    Console.Write("x = "); 
    string x = Console.ReadLine(); 
    dx = Convert.ToDouble(x); 
    Console.Write("X must be bigger than 1."); 
} 
while (dx > 1); 

此外,您还可以重构你的代码一点点:

double dx; 
do 
{ 
    Console.Write("x = "); 
    dx = Convert.ToDouble(Console.ReadLine()); //you can get exception here if your line can't be converted to double 
    Console.Write("X must be bigger than 1."); 
} 
while (dx > 1);