随机函数rand

rand:随机函数

但由于内部起始值默认是1,所以根据内部公式,只用rand函数的话数字其实并不是真正随机的。

例:void main()

{
int res = rand()
printf("%d\n",res);

}

这个输出的值每次都是相同的。

如何让数字变得相对随机呢,那么要让rand的起始值变化。

这里介绍一下srand:srand(x);  将rand的初始值改为x。

在这里引用系统的时间(因为系统时间一直在变),需要#include 这个函数库。

void main()

{
char *name[] = {"abb","acc","bbc","abc","qwe","asd","zxc"};
time_t temp;
time(&temp);
int len = sizeof(name)/sizeof(name[0]);
srand(temp);
int res = rand()% len;
printf("%s\n",name[res]);
int i;
scanf("%d",&i);

}

这样每次输出的数字就会相对随机。

你可能感兴趣的:(随机函数rand)