如何得出rand( )中的种子?
编写产生1000个1到10范围的随机数的程序,不必保存或打印数字,仅打印每个数字产生了多少次,让程序对10个不同的种子进行计算,数字出现的次数相同吗?可以使用自定义函数或ANSI C中的rand()和srand(),这是一个测试特定随机发生器的随机性的方法。
“让程序对10个不同的种子进行计算,数字出现的次数相同吗”这步怎么算呀,我怎么知道用了那10个不同的种子呀?
----------------解决方案--------------------------------------------------------
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#define COUNTLEN 10
#define MAXLEN 1000
int main(void)
{
int count[COUNTLEN] = {0};
int i ;
srand(time(NULL)) ;
for(i = 0;i < MAXLEN;i++)
{
count[rand()%COUNTLEN] ++ ;
}
for(i = 0;i < COUNTLEN;i++)
{
printf("%d:%d\n", i, count[i]) ;
}
}
----------------解决方案--------------------------------------------------------