在 C 中生成一定范围内的随机数
c++server side programmingprogramming
在这里我们将看到如何使用 C 生成给定范围内的随机数。为了解决这个问题,我们将使用 srand() 函数。当前时间将用于为 srad() 函数提供种子。
此函数无法生成任何范围内的随机数,它可以生成 0 到某个值之间的数字。因此,对于它,我们必须遵循一个技巧。我们将生成 0 到(上限和下限 + 1)之间的随机数,然后添加下限进行偏移。
示例
#include <stdio.h> #include <stdlib.h> #include <time.h> void generate_random(int l, int r, int count) { //这将生成范围为 l 和 r 的随机数 int i; for (i = 0; i < count; i++) { int rand_num = (rand() % (r - l + 1)) + l; printf("%d ", rand_num); } } main() { int lower = 10, upper = 15, count = 15; srand(time(0)); //当前时间作为随机数生成器的种子 generate_random(lower, upper, count); printf("\n"); }
输出
15 11 13 10 13 10 15 11 14 12 12 13 12 13 14