C:
rand() % (max - min)
假设随机数在0-10之间。
rand() % 10
0.567 % 10
=相同的数字。 (0.567)。它并没有真正做任何事情。 rand()
始终在0-1之间,只要max-min总是> = 1,它就什么都不做。
难道你不只是使用乘法而不是模数?
int rand = rand() * (max - min) + 1
答案 0 :(得分:5)
rand()
会返回0
和RAND_MAX
之间的数字。然后,您将使用modulo将其约束到某个范围。因此,如果你想要一个0到10之间的数字,你可以rand() % 10
。