如何在代码中添加循环,以便代码一直运行到用户键入'';
本文关键字:代码 运行 用户 一直 添加 循环 | 更新日期: 2023-09-27 18:27:36
我不知道自己在做什么,很难做到这一点。请随意更正代码,帮助我添加循环,甚至从头开始。
这是我试图制作一个基于控制台的应用程序的问题,该应用程序要求用户在键盘上键入小写字母。如果输入的字符是小写字母,则显示"OK";如果不是小写字母,则显示一条错误消息。程序应继续,直到用户键入"!"为止。
到目前为止,我拥有的是:
if (Char.IsLower(c))
{
Console.WriteLine("OK");
}
else if (Char.IsUpper(c))
{
Console.WriteLine("The character is not a lowercase letter.");
}
else if (Char.IsDigit(c))
{
Console.WriteLine("The character is not a lowercase letter.");
}
else
{
Console.WriteLine("The character is not a lowercase letter.");
}
Console.ReadKey();
此代码应该可以工作。它将循环,直到用户输入感叹号。
while (true)
{
var inputCharacter = Console.ReadKey().KeyChar;
if (inputCharacter == '!')
{
break;
}
if (char.IsLower(inputCharacter))
{
Console.WriteLine("OK");
}
else
{
Console.WriteLine("The character is not a lowercase letter.");
}
}
条件比现有的要简单得多。。这里有一个你有条件的例子。在我看来,您已经发生了某种循环,因为c
存在于您的示例中:
if (c == '!') {
break;
}
else if (char.IsLower(c)) {
// it's fine!
Console.WriteLine("OK");
}
else {
// it's not a lowercase character
Console.WriteLine("Not a lowercase character");
}
您可以在等待!
的Console.ReadKey
上使用while
循环
char c;
while ((c = Console.ReadKey(true).KeyChar) != '!')
{
if (char.IsLower(c))
{
Console.WriteLine("OK");
continue;
}
Console.WriteLine("The character is not a lowercase letter.");
}