在2个变量之间生成随机数

时间:2018-08-28 08:59:22

标签: c random

我正在努力寻找一种方法来生成仅在20到30之间的随机数。到目前为止,我已经掌握了这种方法,但是它的数字低于20。

map

3 个答案:

答案 0 :(得分:2)

要获取20到30之间的数字,请使用:

(rand() % 10) + 20

一般公式为:

(rand() % (difference_between_upper_and_lower_limit)) + lower_limit

上限和下限之差的结果将是:

(0, no_of_numbers_between_upper_and_lower_limit)

答案 1 :(得分:0)

也许您可以尝试rand()/10 + 20

答案 2 :(得分:0)

尝试一下:

int num1 = 30;
int num2 = 20;
int num_random;
while (1){
    num_random = rand()%num1;
    if(num_random < num2)
        break;
}