我必须编写代码,要求3个整数值并找到最大的整数。但是,如果用户输入非数字值,则该值必须为零。到目前为止,我写了这个
int a, b, c;
Console.WriteLine("Enter value 1:");
a = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter value 2:");
b = Convert.ToInt32(Console.ReadLine());
Console.WriteLine("Enter value 3:");
c = Convert.ToInt32(Console.ReadLine());
if (a > b && a > c)
{
Console.WriteLine("The greatest value is: {0}", a);
}
if (b > a && b > c)
{
Console.WriteLine("The greatest value is: {0}", b);
}
if (c > a && c > b)
{
Console.WriteLine("The greatest value is: {0}", c);
}
此代码仅适用于数字。我的问题是我不能使非数字输入的值为零。我尝试使用字符串而不是int,所以没有错误,但是我无法在if语句中对字符串使用“>”,并且我也尝试使用默认值,因为默认情况下它为零。
谢谢
您可以替换:
x = Convert.ToInt32(Console.ReadLine());
有...
int.TryParse(Console.ReadLine(), out int x);
如果无法解析输入,则x
最终将为0。