函数rand所产生的随机数实际上是伪随机数,即反复调用函数rand所产生的一系列数似乎是随机的,但每次执行程序所产生的序列则是重复的。要产生真正的随机数序列,必须在每一次运行前为rand函数提供不同的种子,这是由srand函数提供的。
所以加上srand(time(NULL))就可以产生真正的随机数了。
#include <stdlib.h>
#include <stdio.h>
#include<conio.h>
#include <time.h>
int main(void)
{
int i;
srand(time(NULL));
printf("Ten random numbers from 0 to 99/n/n");
for(i=0; i<10; i++)
printf("%d/n", rand()%100);
getch();
return 0;
}
所以加上srand(time(NULL))就可以产生真正的随机数了。
#include <stdlib.h>
#include <stdio.h>
#include<conio.h>
#include <time.h>
int main(void)
{
int i;
srand(time(NULL));
printf("Ten random numbers from 0 to 99/n/n");
for(i=0; i<10; i++)
printf("%d/n", rand()%100);
getch();
return 0;
}