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

399
2024/1/17 22:13:08
栏目: 编程语言
开发者测试专用服务器限时活动,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之间的随机数,所以如果想要生成更大范围的随机数,可以通过多次调用上述代码来实现。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: C语言中怎么用fopen判断文件是否存在