c语言 srand rand,C语言实战开发——srand()和rand()函数

头文件为#include

定义函数 :int rand(void)

rand()功能

产生随机数

rand()会返回一随机数值,范围在0至RAND_MAX 间

用"int x = rand() % 100;"来生成 0 到 100 之间的随机数是一种方法,比较好的做法是: j=(int)(n*rand()/(RAND_MAX+1.0))产生一个0到n之间的随机数。

srand()

函数定义:void srand(unsigned int seed)

函数功能:设置随机数种子

函数说明:通常可以用getpid()(获取当前进程的进程识别码)或者time(NULL)(获取当前系统的时间信息)来充当种子,保持每次运行时种子是不一样的。

下面是用srand()和rand()制作的一款小游戏:

#include

#include

#include

#include

int main(){

int count = 3; //记录每次生成多少个随机数

while(1){

unsigned int seed = time(NULL); //1000

//设置随机数的种子

srand(seed);

for(int i = 0; i < count; i++){

//生成一个随机数

int temp2 = rand() % 9 + 1;

printf("%d ",temp2);

}

printf(" ");

// 延时2s

Sleep(2000);

//for(int i = 0; i < 10000000000/15*2; i++);

//刷新屏幕

system("cls");

/* mac

for(int i = 0; i < 20; i++){

printf(" ");

}

*/

int temp;

printf("请输入:");

//重新设种子和之前生成时的种子一样

srand(seed);

//接收用户输入 一个一个接收

// 1 2 3

// 1 2 4

for(int i = 0; i < count; i++){

scanf("%d", &temp);

//获取对应的生成的随机数

int old = rand() % 9 + 1;

//比较输入的和随机数是否相同

//printf("old:%d ", old);

if (temp != old){

printf("错误 退出! ");

exit(EXIT_SUCCESS);

}

}

count++;

system("cls");

}

return 0;

}

头文件为#include 定义函数 :int rand(void) rand()功能 产生随机数 rand()会返回一随机数值,范围在0至RAND_MAX 间 用"int x = rand() % 100;"来生成 0 到 100 之间的随机数是一种方法,比较好的做法是: j=(int)(n*rand()/(RAND_MAX+1.0))产生一个0到n之间的随机数。 srand() 函数定义:void srand(unsigned int seed) 函数功能:设置随机数种子 函数说明:通常可以用getpid()(获取当前进程的进程识别码)或者time(NULL)(获取当前系统的时间信息)来充当种子,保持每次运行时种子是不一样的。 下面是用srand()和rand()制作的一款小游戏: #include #include #include #include int main(){ int count = 3; //记录每次生成多少个随机数 while(1){ unsigned int seed = time(NULL); //1000 //设置随机数的种子 srand(seed); for(int i = 0; i < count; i++){ //生成一个随机数 int temp2 = rand() % 9 + 1; printf("%d ",temp2); } printf(" "); // 延时2s Sleep(2000); //for(int i = 0; i < 10000000000/15*2; i++); //刷新屏幕 system("cls"); /* mac for(int i = 0; i < 20; i++){ printf(" "); } */ int temp; printf("请输入:"); //重新设种子和之前生成时的种子一样 srand(seed); //接收用户输入 一个一个接收 // 1 2 3 // 1 2 4 for(int i = 0; i < count; i++){ scanf("%d", &temp); //获取对应的生成的随机数 int old = rand() % 9 + 1; //比较输入的和随机数是否相同 //printf("old:%d ", old); if (temp != old){ printf("错误 退出! "); exit(EXIT_SUCCESS); } } count++; system("cls"); } return 0; }
经验分享 程序员 微信小程序 职场和发展