做. .While循环计数器实现不工作
本文关键字:工作 实现 计数器 While 循环 | 更新日期: 2023-09-27 18:14:34
我用c#(控制台应用程序)创建了一个程序,它提示用户输入"2+2=?"的答案,如果正确,则弹出"做得好"的消息,如果不正确,则弹出"请再试一次"。我要做的是让程序告诉用户他们在得到正确答案之前猜测了多少次。
这是我到目前为止所做的
class Program
{
public static int correct_answer, counter, user_answer, counterUpdated;
static void Main(string[] args)
{
correct_answer = 4;
do
{
counter = 1;
counterUpdated = counter++;
Console.WriteLine("2+2= ?");
user_answer = Convert.ToInt32(Console.ReadLine());
if (user_answer != correct_answer)
{
Console.Clear();
Console.WriteLine("Wrong, try againg" + " this is your " + counterUpdated + " try.");
}
} while (user_answer != correct_answer); // The code will keep looping until the user prompts the correct answer
Console.Clear();
Console.WriteLine("Well Done! you did it in this amount of guesses " + counterUpdated);
Console.ReadLine();
}
}
如果有人能告诉我如何使计数器工作,那就太好了。
您总是在循环开始时将counter
设置为1,然后立即将counterUpdated = counter++;
设置为1(无论如何,这有点奇怪…)。只需在循环外初始化并在循环内递增一个计数器即可。
int guessNumber = 0;
do {
guessNumber++;
// ...
稍微调整了一下,应该可以了:)
class Program
{
public static int correct_answer, counter, user_answer;
static void Main(string[] args)
{
correct_answer = 4;
counter = 0;
do
{
counter++;
Console.WriteLine("2+2= ?");
user_answer = Convert.ToInt32(Console.ReadLine());
if (user_answer != correct_answer)
{
Console.Clear();
Console.WriteLine("Wrong, try againg" + " this is your " + counter+ " try.");
}
} while (user_answer != correct_answer); // The code will keep looping until the user prompts the correct answer
Console.Clear();
Console.WriteLine("Well Done! you did it in this amount of guesses " + counter);
Console.ReadLine();
}
}
我所做的是我删除了counterUpdated
变量,并让counter
变量做所有的计数工作:)
希望有帮助