cpp 生成隨機數

2021-09-13 19:17:13 字數 824 閱讀 3245

單純的rand()會返回乙個0至rand_max之間的隨機數值,而rand_max的值與int位數有關,最小是32767。

不過rand()是一次性的,因為系統預設的隨機數種子為1,只要隨機數種子不變,其生成的隨機數序列就不會改變。

#include

//預設從1開始

for(

int i=

0;i<

100;i++

)

產生一定範圍隨機數的通用表示公式是:

取得[0,x)的隨機整數:rand()%x;

取得[a,b)的隨機整數:rand()%(b-a)+a;

取得[a,b]的隨機整數:rand()%(b-a+1)+a;

取得(a,b]的隨機整數:rand()%(b-a)+a+1;

取得0-1之間的浮點數:rand()/double(rand_max)。

srand()可用來設定rand()產生隨機數時的隨機數種子。通過設定不同的種子,我們可以獲取不同的隨機數序列。可以利用srand((unsigned int)(time(null))的方法,利用系統時鐘,產生不同的隨機數種子。

不過要呼叫time(),需要加入標頭檔案< ctime >。

#include

#include

srand

(int

(time(0

)));

// 設定開始(預設為1)

for(

int i=

0;i<

100;i++

)

參考部落格:

隨機生成隨機數

現畫乙個command命令按鈕,進行貼上。private sub command1 click show me scale 0,0 18,8 me.auto redraw true me.draw mode 2 circle 3,4 3,vb red me.auto redraw false lin...

隨機數生成

原型 void srand unsigned seed 用法 srand和rand 配合使用產生偽隨機數序列。rand函式在產生隨機數前,需要系統提供的生成偽隨機數序列的種子,rand根據這個種子的值產生一系列隨機數。如果系統提供的種子沒有變化,每次呼叫rand函式生成的偽隨機數序列都是一樣的。sr...

生成隨機數

1 生成num位數驗證碼 用於簡訊驗證功能 public static random rand new random public static string getcode int num result,s k return result random r new random 建立乙個隨機數生成...