C 中如何產生隨機數

2021-08-29 20:46:32 字數 644 閱讀 8391

c++中沒有自帶的random函式,要實現隨機數的生成就需要使用rand()和srand()函式,不過,由於rand()的內部是用線性同餘法做的,所以生成的並不是真正的隨機數,而是在一定範圍內可看為隨機的偽隨機數。

rand

單純的rand()會返回乙個0至rand_max之間的隨機數值,而rand_max的值與int位數有關。最小的是32767。不過rand()是一次性的,因為系統預設的隨機種子為1 ,只要隨機數種子不變,其生成的隨機數列就不會改變。

其實,對於rand()的範圍,我們是可以人為設定的,只要再巨集定義中生成乙個random(int x)函式,就可以生成範圍為0~x的隨機數值。當然。也可以定義為random(a,b),使其生成範圍為a到b的隨機數值。具體定義方法在通式部分。

srand

srand()可用來設定rand()產生隨機數的隨機種子。通過設定不同的種子,我們就可以獲取不同的隨機數序列。可以利用srand(unsigned int)(time(null))的方法,利用系統始終,產生不同的隨機數種子。不過要呼叫time(),需要加入標頭檔案。

示例如下:

#include#include#includeusing namespace std;

int main()

C 如何產生隨機數

這裡要用到的是rand 函式,srand 函式,和time 函式。需要說明的是,iostream標頭檔案中就有srand函式的定義,不需要再額外引入stdlib.h 而使用time 函式需要引入ctime標頭檔案 c語言 c 怎樣產生隨機數 這裡要用到的是rand 函式,srand 函式,和time...

C語言如何產生隨機數

1.基本函式 在c語言中取隨機數所需要的函式是 int rand void void srand unsigned int n rand 函式和srand 函式被宣告在標頭檔案stdlib.h中,所以要使用這兩個函式必須包含該標頭檔案 include 2.使用方法 rand 函式返回0到rand m...

C語言如何產生隨機數

1.基本函式 在c語言中取隨機數所需要的函式是 int rand void void srand unsigned int n rand 函式和srand 函式被宣告在標頭檔案stdlib.h中,所以要使用這兩個函式必須包含該標頭檔案 include 2.使用方法 rand 函式返回0到rand m...