关于random的问题。
我在用random 函数生成一个随机数。假如函数是:random(10) 运行后产生一个随机数。但如果不改参数,下次运行时随机数还是和上次的 一样。我想每次运行都产生不同的随机数。该怎么办?
以下是引用ChenMo在2005-9-18 21:46:40的发言:
设置一个随机数种子便可。
设置随机数种子的函数可使用 randomize(),
该函数的原形是 void randomize(void);所在头文件: stdlib.h此函数无须参数,也无返回值,
实际上,随机数种子函数实现时会调用 time()函数,
且声明了一个全局变量 Seed,每次调用随机数产生函数后 Seed 都将被更改,
以达到产生某范围内周期性的随机数的目的,
Seed 便是种子,调用 randomize 实际上就是给 Seed 初始化一个值,
可以想象它的实现就是 Seed = time();
随机数产生器可使用线性同余数方法产生,
这是最简单的方法,
且计算机无法产生真正的随机数,因为它们都是依赖算法产生的。
所以称产生的随机数为伪随机数,但已足够应用了。
谢谢,我才初学。你讲的很细,很全,非常的负责任。
只是我不知道具体怎么引用,我查函数库看到过这个函数,但引用时总是出错。能不能举个简单的例子,引用一下。谢谢。
[此贴子已经被作者于2005-9-19 8:56:05编辑过]