隨機數具體用法srand()與rand()

2021-09-02 06:55:16 字數 467 閱讀 3487

標頭檔案

1.rand()產生隨機數,用線性同餘法,是偽隨機數。

rand()原型:int rand(void)

使用rand()函式產生1-100以內的隨機整數:int number1=rand()%100+1;

2.srand()原型:void srand(unsigned int seed)

srand()用來設定rand()產生隨機數時的隨機數種子,seed是整數,若是同乙個種子,則產生的隨機數相同。

通常可用time(0)或者geypid(0)做種子,以保證產生的隨機數不同。

使用rand()與srand()配合產生一定範圍內的隨機數:

類似乙個公式:

int num=rand()%(n-m+1)+m

產生[m,n]的隨機數。

比如10-30

srand(time(0));

int a =rand()%(21)+10;

生成隨機數的 sand 與 srand

需要使用 include 標頭檔案中的rand 函式來生成隨機數。這個函式返回乙個在 0 rand max 之間的隨機整數。rand max 是乙個平台決定的常數。例如,在 visual c 中,rand max 是32767.rand 函式生成的是偽隨機數。即每次在同乙個系統上執行這個函式的時候,...

rand 和 srand產生隨機數

在c語言中,rand 函式可以用來產生隨機數,但是這不是真真意義上的隨機數,是 乙個偽隨機數,是根據乙個數,我們可以稱它為種子,為基準以某個遞推公式推算出來的一係數,當這系列數很大的時候,就符合正態公布,從而相當於產生了隨機 數,但這不是真正的隨機數,當計算機正常開機後,這個種子的值是定了的,除非你...

隨機數和隨機數種子 rand 和srand

在計算機中並沒有乙個真正的隨機數發生器,但是可以做到使產生的數字重複率很低,這樣看起來好象是真正的隨機數,實現這一功能的程式叫偽隨機數發生器。有關如何產生隨機數的理論有許多,如果要詳細地討論,需要厚厚的一本書的篇幅。不管用什麼方法實現隨機數發生器,都必須給它提供乙個名為 種子 的初始值。而且這個值最...