C++中rand()函数的使用和随机数生成

5星 · 超过95%的资源 需积分: 31 18 下载量 56 浏览量 更新于2024-07-30 收藏 62KB DOC 举报
C++随机数的生成 C++中随机数的生成是通过标准库<cstdlib>提供的两个函数来实现的:rand()和srand()。其中,rand()函数用于生成伪随机数,srand()函数用于设置随机数的种子。 **rand()函数** rand()函数返回一个伪随机整数,范围在[seed, RAND_MAX)之间,seed是通过srand()函数设置的种子。rand()函数的返回值是一个整数,范围在[seed, RAND_MAX)之间,RAND_MAX是一个常量,等于0x7fff。 **srand()函数** srand()函数用于设置随机数的种子,参数seed是种子的值。srand()函数会将种子设置为seed,并将其作为随机数的起始值。如果用户没有调用srand()函数,那么rand()函数将自动调用srand(1)来初始化种子。 **rand()函数的使用** rand()函数可以用来生成随机数,但是需要注意的是,rand()函数在每次调用时都会产生相同的随机数序列,除非我们在每次程序运行时都重新设置种子。例如: ```cpp for(int i=0; i<10; i++){ ran_num = rand() % 6; cout << ran_num << " "; } ``` 每次运行都将输出相同的随机数序列。如果我们想要每次运行生成不同的随机数序列,那么我们需要在每次程序运行时重新设置种子。例如: ```cpp srand(time(0)); // 使用当前时间作为种子 for(int i=0; i<10; i++){ ran_num = rand() % 6; cout << ran_num << " "; } ``` 这样,每次运行都会生成不同的随机数序列。 **srand()函数的使用** srand()函数用于设置随机数的种子,参数seed是种子的值。如果我们想要生成不同的随机数序列,那么我们需要在每次程序运行时重新设置种子。例如: ```cpp srand(time(0)); // 使用当前时间作为种子 for(int i=0; i<10; i++){ ran_num = rand() % 6; cout << ran_num << " "; } ``` 这样,每次运行都会生成不同的随机数序列。 **结论** 在C++中生成随机数需要使用rand()和srand()两个函数。rand()函数用于生成伪随机数,srand()函数用于设置随机数的种子。如果我们想要生成不同的随机数序列,那么我们需要在每次程序运行时重新设置种子。