c语言

c语言随机数如何限定范围

小亿
483
2023-12-05 00:59:36
栏目: 编程语言

要限定C语言中随机数的范围,可以使用取余运算符(%)来实现。

首先,通过rand()函数生成一个随机数,然后使用取余运算符将随机数限定在指定范围内。例如,要生成一个介于0和N之间的随机数,可以使用以下代码:

int randomNumber(int N) {
    return rand() % (N + 1);
}

这样,生成的随机数就会在0到N之间(包括0和N)。

如果要生成一个介于M和N之间的随机数,可以使用以下代码:

int randomNumberInRange(int M, int N) {
    return M + rand() % (N - M + 1);
}

这样,生成的随机数就会在M和N之间(包括M和N)。

需要注意的是,为了使随机数更加随机,需要在使用随机数之前先调用srand()函数来初始化随机数种子。可以使用time()函数来获取系统当前时间作为种子,例如:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int randomNumberInRange(int M, int N) {
    return M + rand() % (N - M + 1);
}

int main() {
    srand(time(NULL)); // 初始化随机数种子

    int randomNum = randomNumberInRange(0, 10);
    printf("随机数: %d\n", randomNum);

    return 0;
}

运行程序时,每次生成的随机数都会不同。

0
看了该问题的人还看了