C / C ++中的rand()和srand()

在本文中,我们将讨论C ++ STL的工作,语法以及示例rand()srand()函数。

什么rand()

rand()函数是C ++ STL中的内置函数,在<cstdlib>头文件中定义。rand()用于生成一系列随机数。当我们想在代码中生成随机数时,可以使用此函数。

就像我们在C ++中制作ludo游戏一样,我们必须生成1到6之间的任何随机数,以便可以rand()用来生成随机数。

随机数是通过使用一种算法生成的,该算法在调用此函数时会给出一系列不相关的数。

就像我们想要生成1-6之间的随机数,然后使用如下函数:

数值= rand()%6 +1;

语法

int rand();

参数

该函数不接受任何参数-

返回值

此函数返回0到RAND_MAX之间的整数值。

输入值 

rand() % 100 +1;

输出结果 

57

示例

rand()

#include <stdio.h>
#include <stdlib.h&g;
int main(void){
   printf("Randomly generated numbers are: ");
   for(int i = 0; i<5; i++)
      printf(" %d ", rand());
   return 0;
}

输出结果

如果我们在第一时间运行此代码,则输出为-

Randomly generated numbers are: 1804289383 846930886 1681692777 1714636915
1957747793

如果我们运行此代码第N次,输出将为-

Randomly generated numbers are: 1804289383 846930886 1681692777 1714636915
1957747793

什么srand()

srand()函数是C ++ STL中的内置函数,在<cstdlib>头文件中定义。srand()用于初始化随机数生成器。此函数提供了生成伪随机整数序列的起点。该参数作为生成伪随机数的种子传递。每当使用不同的种子值时,可以期望伪数生成器生成与相同的不同结果序列rand()

语法

int srand(unsigned int seed);

参数

该函数接受以下参数-

  • seed-这是一个整数,伪随机数生成器用作种子。

返回值

此函数返回伪生成的随机数。

输入值 

srand(time(0));
rand();

输出结果 

1804289383

示例

srand()

#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main(void){
   srand(time(0));
   printf("Randomly generated numbers are: ");
   for(int i = 0; i<5; i++)
      printf(" %d ", rand());
   return 0;
}

输出结果

如果我们在第一时间运行此代码,则输出为-

Randomly generated numbers are: 382366186 1045528146 1291469435 515349891
931606430

如果我们运行此代码的第二时间,输出将是-

Randomly generated numbers are: 1410939666 214525217 875042802
1560673843 782892338