我必须找到一个数字的平方/ 12345 / - 它完成了。我想让程序变得更复杂,我有这个:
using System;
class Program
{
static void Main()
{
Console.WriteLine("The square of the number 12345 is");
Console.WriteLine(Math.Sqrt(12345));
Console.WriteLine("Enter a number to calculate the square:");
int numVal = int.Parse(Console.ReadLine());
Console.WriteLine("The square of your number is" + " " + Math.Sqrt(numVal));
Console.WriteLine("Do you wish to enter another number? Yes / No");
string input = Console.ReadLine();
if (input == "Yes")
{
Console.WriteLine("Enter a number to calculate the square:");
int newNum = int.Parse(Console.ReadLine());
Console.WriteLine("The square of your number is" + " " + Math.Sqrt(newNum));
}
else
{
Console.WriteLine("Have a nice day!");
}
}
}
现在有一个问题:当程序询问我是否要输入另一个号码时,答案应该是大写字母/是,否/。有没有办法使它工作,即使我进入小案件的衣服/是,没有/?
答案 0 :(得分:2)
根据您的输入,下面的行会做出反应。
if(string.Equals(input, "Yes", StringComparison.CurrentCultureIgnoreCase))
{
// Your stuffs
}
或
if(string.Equals(input, "Yes", StringComparison.OrdinalIgnoreCase))
{
// Your stuffs
}
注意: OrdinalIgnoreCase比较没有文化方面的字符代码。这对于精确比较(如登录名)很有用,但不适用于排序具有异常字符(如é或ö)的字符串。这也更快,因为在比较之前没有额外的规则要应用。
答案 1 :(得分:1)
你可以尝试:
...
string input = Console.ReadLine();
if (input.ToUpper() == "YES")
{
...
答案 2 :(得分:-2)
string.Equals(input, "Yes", StringComparison.OrdinalIgnoreCase)