C 隨機函式

2021-09-30 11:03:42 字數 502 閱讀 4503

1.srand() 和 rand() 函式

rand()產生隨機數,一般是從srand (seed)中指定的seed開始,返回乙個[seed, rand_max(0x7fff))間的隨機整數。

如果使用者在此之前沒有呼叫過srand(seed),它會自動呼叫srand(1)一次。  

如果seed的值每次都一樣,那麼產生的隨機數每次都是一樣的。

因此常用乙個不斷變化的量來做seed,比如系統時間time(0) 或者clock()。 當執行間隔在一秒以內的時候,或者在一毫秒以內的時候要注意seed是否真的發生變化了。

用srand()初始化一次seed,因每一次連續呼叫 rand() 函式時都用序列中的前乙個數作為下乙個數的種子,所以對於任何最初給定的種子(每次都呼叫srand()的話)都會生成相同的數列。

2. 詳解rand()函式和random()函式

C 隨機函式

在很多時候,程式中會用到隨機數,在c 中就要用到專門用以產生隨機數的標準庫函式rand 它會產生乙個無符號整數,範圍在0 32767,即兩位元組16位的整數最大值。而gnu c 產生的隨機數範圍為2147483647。範圍中的每乙個數在每次隨機呼叫rand時都有相同的概率被選中。呼叫時 需要引用標頭...

C 隨機函式(VC program)

c 隨機函式 vc program include include include using namespace std define max 100 int main int argc,char argv srand unsigned time null srand 函式產生乙個以當前時間開始的...

c語言 隨機函式

c語言 隨機函式 include rand srand 標準c庫中函式rand 可以生成0 rand max 之間的乙個隨機數,其中rand max 是stdlib.h 中定義的乙個整數,它與系統有關。rand 函式沒有輸入引數,直接通過表示式rand 來引用 例如可以用下面的語句來列印兩個隨機數 ...