C#随机挑选问题和;骑自行车直到完成

C#随机挑选问题和;骑自行车直到完成,c#,C#,我必须创建一个以随机顺序打印问题的测验。我已经写下了if语句中的所有问题,如果回答了10个问题,我希望所有问题都显示正确的答案,并与用户输入的答案进行比较。我还不知道如何使代码在1完成后转到下一个if语句 如何完成1个if语句(问题),随机数生成器指向另一个if,依此类推 static void Main(string[] args) { string answer1; string answer2; string answer3;

我必须创建一个以随机顺序打印问题的测验。我已经写下了if语句中的所有问题,如果回答了10个问题,我希望所有问题都显示正确的答案,并与用户输入的答案进行比较。我还不知道如何使代码在1完成后转到下一个if语句

如何完成1个if语句(问题),随机数生成器指向另一个if,依此类推

static void Main(string[] args)
    {
        string answer1;
        string answer2;
        string answer3;
        string answer4;
        string answer5;
        string answer6;
        string answer7;
        string answer8;
        string answer9;
        string answer10;
        int answeredQs = 0;

        Random rnd = new Random();
        int questionNum = rnd.Next(1,10);
        Console.WriteLine("Question Number: " + questionNum);

            if (questionNum == 1)
            {
                Console.WriteLine("What is a CPU?");
                answer1 = Console.ReadLine();
                answeredQs = +1;
            }

            if (questionNum == 2)
            {
                Console.WriteLine("What does 'RAM' stand for?");
                answer2 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 3)
            {
                Console.WriteLine("What is RAM?");
                answer3 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 4)
            {
                Console.WriteLine("How do you measure how fast a processor is?");
                answer4 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 5)
            {
                Console.WriteLine("What is an ALU & what does it do?");
                answer5 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 6)
            {
                Console.WriteLine("What is a register?");
                answer6 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 7)
            {
                Console.WriteLine("What is EEPROM?");
                answer7 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 8)
            {
                Console.WriteLine("What is the difference between SRAM and DRAM?");
                answer8 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 9)
            {
                Console.WriteLine("What is ROM?");
                answer9 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (questionNum == 10)
            {
                Console.WriteLine("What does the Control Unit do?");
                answer10 = Console.ReadLine();
                answeredQs = answeredQs + 1;
            }

            if (answeredQs == 10)
            {
                Console.WriteLine("asdasdasd");
            }

您可以将
if
语句放入循环(
for
while
…)

此外,例如,将问题放入ArrayList(或任何其他“数据存储”结构,例如一个简单的数组)中,代码的可读性会更高

然后,你可以利用这个结构中的问题索引,总是在一个循环中


希望这有帮助

您可以将
if
语句放入循环(
for
while
…)

此外,例如,将问题放入ArrayList(或任何其他“数据存储”结构,例如一个简单的数组)中,代码的可读性会更高

然后,你可以利用这个结构中的问题索引,总是在一个循环中


希望这有帮助

太好了!你的问题是什么?好的,我已经做了调整;如何完成1个if语句(问题),随机数生成器指向另一个if,依此类推。好吧,你可以将所有问题放入数组中,并将其洗牌,然后逐个取出(当它们已经是随机顺序时)。你可以阅读如何洗牌数组。太好了!你的问题是什么?好的,我已经做了调整;如何完成1个if语句(问题),随机数生成器指向另一个if,依此类推。好吧,你可以将所有问题放入数组中,并将其洗牌,然后逐个取出(当它们已经是随机顺序时)。您可以阅读如何洗牌数组。好的,谢谢。我们的讲师还没有教我们数组,所以我真的不知道。好吧,我假设你已经看到了循环?这可能是您正在寻找的,我们已经做了一些,但没有为循环。所以你说的是我要使用一个循环,我必须把所有的东西都放到一个数组中,而数组在循环中?不完全是这样。您可以首先使用当前代码设置一个循环,以便“一个接一个”地处理所有语句。但是由于所有的问题都具有相同的类型和结构,您将看到(稍后我猜)结构化数据类型可以帮助您。因为你可以在这个结构化变量上使用循环,或者只是随机循环并使用这个结构化变量的索引来访问你的问题。谢谢。我们的讲师还没有教我们数组,所以我真的不知道。好吧,我假设你已经看到了循环?这可能是您正在寻找的,我们已经做了一些,但没有为循环。所以你说的是我要使用一个循环,我必须把所有的东西都放到一个数组中,而数组在循环中?不完全是这样。您可以首先使用当前代码设置一个循环,以便“一个接一个”地处理所有语句。但是由于所有的问题都具有相同的类型和结构,您将看到(稍后我猜)结构化数据类型可以帮助您。因为你可以在这个结构化变量上使用循环,或者只是随机循环并使用这个结构化变量的索引来访问你的问题