我的代码有问题,找不到我的错误。为什么只有第一个尝试有效,而在其他所有尝试中却显示错误?
甚至当我输入323
时(例如,这是真实的),然后在所有内容均为假(甚至是空花scape)之后也显示“ true”。
class Program
{
public static void Main()
{
string inputedString = Console.ReadLine();
string reversedString = string.Empty;
while (true)
{
if (inputedString == "END")
{
break;
}
for (int i = inputedString.Length - 1; i >= 0; i--)
{
reversedString += inputedString[i];
}
if (reversedString == inputedString)
{
Console.WriteLine("true");
}
else
{
Console.WriteLine("false");
}
}
}
}
答案 0 :(得分:1)
您在循环外读取了第一个字符串,而从不重新读取循环内的字符串。您也不会清除reversedString,因此循环中的每个后续时间都是错误的。
public static void Main()
{
string inputedString;
string reversedString;
while (true)
{
inputedString = Console.ReadLine();
reversedString = string.Empty;
if (inputedString == "END")
{
break;
}
for (int i = inputedString.Length - 1; i >= 0; i--)
{
reversedString += inputedString[i];
}
if (reversedString == inputedString)
{
Console.WriteLine("true");
}
else
{
Console.WriteLine("false");
}
}
}
}
答案 1 :(得分:1)
下面的代码部分应该在“ while”循环内
string inputedString = Console.ReadLine();
string reversedString = string.Empty;