【发布时间】:2014-09-15 02:42:06
【问题描述】:
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
【问题讨论】:
-
rand() 总是在 0-1 之间 - 这对 C 来说是不正确的。