【发布时间】:2014-06-11 18:14:38
【问题描述】:
对于学校,我需要用 C# 制作一个项目,该项目将随机提出 20 个问题。
我有一个包含问题和答案的文本文件。
通过一些代码,我们将问题放在一个数组中。现在我们可以生成一个从 0 到 19 的数字(20 个问题)。但每个问题只需要出现 1 次且仅出现 1 次。
我们不能随机做第一个,然后按顺序做第二个。每个问题都需要随机。
我的代码(荷兰语):
public int randomVraagMaker()
{
int num;
Random randNum = new Random();
num = randNum.Next(0, 19);
for (int i = 0; i < lijst.Count; i++)
{
if (num == lijst[i])
{
num = randNum.Next(0, 19);
}
else
lijst.Add(num);
}
vraag = num * 7;
return vraag;
【问题讨论】:
-
如果您有具体问题,可以在这里提问。但是,我们不会为您做作业。
-
这里有个提示:获取列表中的问题,然后随机排列列表的顺序。
-
或者,当您选择随机问题时,将其从列表中删除。不过,请确保您的下一个随机数仅达到列表的长度。
-
Randomize a List<T> in C# 的可能重复项
-
从你认为你需要的事情中退后一步,看看你真正想做的事情。您希望以随机顺序获得 20 个问题,没有重复。那是洗牌。 @Silvermind 链接的答案告诉您如何在 C# 中进行洗牌。