C语言如何控制随机数的范围

avatar
作者
猴君
阅读量:0

在C语言中,可以使用rand()函数生成随机数,但默认情况下它生成的是一个范围在0到RAND_MAX之间的整数。如果想要控制随机数的范围,可以通过一些数学计算来实现。

例如,如果想要生成一个范围在0到N之间的随机数,可以使用以下代码:

int random_number = rand() % (N + 1); 

上述代码中,rand() % (N + 1)会生成一个范围在0到N之间的余数,而余数的范围正好是0到N。所以通过这种方式,可以生成一个0到N之间的随机数。

如果想要生成一个范围在M到N之间的随机数(M < N),可以使用以下代码:

int random_number = M + rand() % (N - M + 1); 

上述代码中,rand() % (N - M + 1)会生成一个范围在0到N-M之间的余数,再加上M,余数的范围就变成了M到N。所以通过这种方式,可以生成一个M到N之间的随机数。

需要注意的是,上述代码中的rand()函数还是会生成一个范围在0到RAND_MAX之间的随机数,所以如果想要生成更大范围的随机数,可以通过多次调用上述代码来实现。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!