在C言语中,rand()
函数是用于生成随机数的标准库函数。它不须要参数,前去一个范畴在0到RAND_MAX
之间的整数。RAND_MAX
是在 stdlib.h
头文件中定义的一个常量,平日其值至少为32767。
#include <stdlib.h>
int main() {
int num = rand();
printf("生成的随机数:%d\n", num);
return 0;
}
假如你想生成一个指定范畴内的随机数,可能利用取模运算符 %
来实现。
#include <stdlib.h>
int main() {
int min = 1;
int max = 100;
int num = min + rand() % (max - min + 1);
printf("生成的随机数:%d\n", num);
return 0;
}
为了每次运转顺序时都能掉掉落差其余随机数序列,平日须要在利用rand()
之前挪用srand()
函数设置种子。种子平日是以后时光,可能经由过程time()
函数获取。
#include <stdlib.h>
#include <time.h>
int main() {
srand((unsigned int)time(NULL));
int num = rand();
printf("生成的随机数:%d\n", num);
return 0;
}
rand()
函数生成的随机数序列是伪随机数,即经由过程某种算法生成的,并非真正的随机数。rand()
函数会利用一个默许的种子,招致每次运转顺序时生成的随机数序列雷同。rand()
函数生成的随机数范畴较大年夜,假如须要生成较小的随机数,可能利用取模运算来缩小范畴。RAND_MAX
的值取决于编译器跟平台,平日至少为32767。rand()
函数是C言语中常用的随机数生成函数,经由过程共同srand()
函数设置种子,可能生成差其余随机数序列。在编程中,我们可能根据须要生成恣意范畴内的随机数,以满意各种利用处景。