我正在努力寻找一种方法来生成仅在20到30之间的随机数。到目前为止,我已经掌握了这种方法,但是它的数字低于20。
map
答案 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;
}