【发布时间】:2011-05-15 07:09:16
【问题描述】:
我想在特定范围内生成随机数,例如“选择 18 到 35 之间的随机数”?如何使用rand() 函数做到这一点?
【问题讨论】:
-
iv 尝试了 rand%(35-18)+18,我现在知道它会产生错误
-
你使用什么语言?
-
我不明白你在用 (35-18)+18 做什么。那不是只有35吗? o__O
-
@townsean:
%运算符的优先级高于+运算符。所以读为(rand() % (35 - 18)) + 18。这种方法适用于rand()可以返回任意大数字的环境,但当rand()返回大于或等于 0 但小于 1 的数字时,它将始终返回 18。 -
我正在为人们生成一个随机年龄,年龄必须在 18-35 之间,这些人的名字是从 tex 文件中读取的,我已经完成了所有这些,现在我需要我添加的年龄正确我也尝试过 p->age=rand()%10+25 并且所有年龄都在 18-35 之间但最低年龄是 25 所以它真的不是 rand b/w 18- 35