2012-11-21 44 views
0

嗨我正在开发一个简单的多选择 - 使用Visual Studio的选择 - 测验程序。 (C#)在C中选择随机的地方#

我想用单选按钮做出选择,每个单选按钮都有一个随机选择的答案,其中一个是正确的。

我用所有可能的答案填充数组。 我想知道如何在每次都不在同一个地方做出正确答案?

那么我该如何让正确的答案去随机的地方?其他地方从阵列中选择其他不正确的随机数。 :D

我知道我的问题不是很清楚我不知道该怎么解释。 > <

+0

既然有对你的问题感到困惑,我们中的任何一个人是否接近你想要做的事情? – emartel

+0

@emartel是的,我认为你会很有帮助。我明白了,我会尝试在我的应用程序中使用它。谢谢。 – Lamia

回答

0

首先,选择您的正确答案,然后随机选择一个索引并将正确答案分配给随机单选按钮。

用随机答案填充其他单选按钮。提示:将您的单选按钮存储在列表中以便于执行此操作。首先用所有的单选按钮填充列表,然后当它们填满答案时将它们从列表中删除,这样您就不必处理“我在哪个索引中输入正确答案”或“复杂代码名称为”手动引用控制

编辑:作为另一个答案中指出阿列克谢Levenkov,看到this thread关于如何生成随机数的正确

假设在你的应用程序一个Random random宣布更多信息

List<RadioButton> buttons = new List<RadioButton>(); 
buttons.Add(answer); 
buttons.Add(answer2); 
buttons.Add(answer3); 
buttons.Add(answer4); 

int goodAnswerPos = random.Next(buttons.Count); 
buttons[goodAnswerPos].Text = "Good Answer"; 
buttons.RemoveAt(goodAnswerPos); 

foreach (RadioButton button in buttons) 
{ 
    button.Text = "Randomly Selected Wrong Answer"; 
} 

将控件存储在buttons[goodAnswerPos]将允许您知道用户在提交答案时是否选择了正确的答案。

+0

辉煌的,我会根据我的申请工作,因为我正在使用图片的答案。我没有考虑制作单选按钮列表。我会试试看:D非常感谢。 – Lamia

1

使用C#Random()类和索引你的阵列Next

Random r = new Random(); 

choice = possibleChoices[r.Next(possibleChoices.Length-1)]; 

则可以覆盖错误的选择之一,正确选择

radioButtons[r.Next(radioButtons.Length-1)] = correctAnswer; 

documentation

+0

+1 ...并确保阅读[随机数发生器只生成一个随机数](http://stackoverflow.com/questions/767999/random-number-generator-only-generating-one-random-number)如果你之前没有使用'Random'的话。 –

+0

他想随机将正确的答案分配给不同的单选按钮,找不到随机答案 – emartel

+0

这对我来说是新的,但我会试着去理解它。非常感谢。 – Lamia