使用rand()在2个或更多变量之间进行选择

时间:2016-08-15 10:52:47

标签: c random

我想知道我是否可以使用rand()函数在2个变量之间随机选择。说我有thing1和thing2,rand()可以选择其中一个吗?

我当前的代码只是使用rand()来生成一个随机数,我说如果它奇怪然后是thing1,即使然后是thing2但是如果我添加thing3那么它就不会工作..

1 个答案:

答案 0 :(得分:0)

假设你有n件事。首先,生成0(k*n)-1范围内的随机数,其中k是正整数。然后,将生成的数除以k。您将获得从0n-1的号码。将0映射到thing1,将1映射到thing2,依此类推,直到您将n-1映射到事物n

甚至更简单,只需生成从0n-1的随机数,然后执行上述映射。