我写了这个并且它不起作用,我出错的任何想法?是的,我是编程新手。在此先感谢您的任何建议。
if ((int.Parse(Console.ReadLine()) < 10) && (int.Parse(Console.ReadLine()) > 0))
Console.WriteLine("The right number!!");
else
Console.WriteLine("The wrong number!!");
Console.ReadLine();
答案 0 :(得分:5)
它没有像您期望的那样工作,因为写入if语句的方式是期望从控制台读取2行文本(因为您已经使用了Console.ReadLine())两次。
您应该首先将输入值分配给变量
然后可以在if语句中使用两次,如下所示:
int inputNumber = int.Parse(Console.ReadLine());
if(inputNumber < 10 && inputNumber > 0)
{
Console.WriteLine("The right number!!");
}
else
{
Console.WriteLine("The wrong number!!");
}
答案 1 :(得分:3)
如果您只想阅读1个输入,请尝试以下操作:
int number = int.Parse(Console.ReadLine());
if (number > 0 && number < 10) {
Console.WriteLine("The right number!!");
} else {
Console.WriteLine("The wrong number!!");
}
Console.ReadLine();
这是因为在您的示例中,只有Console.ReadLine()
,您的代码才会要求输入。
答案 2 :(得分:2)
你为什么不这样做:
var input = Console.ReadLine();
int number;
if (int.TryParse(input, out number))
{
if (number > 0 && number < 10)
Console.WriteLine("The right number!!");
else
Console.WriteLine("The wrong number!!");
}
在int.TryParse
语句中使用if
以确保在获得正确的整数输入后输入。