#include
#include
#include
//利用時間來製造偽隨機數
intmain()
以下一段話摘自***煙雨迷離半世殤***:
系統在呼叫rand()之後就自動呼叫srand(),如果使用者在rand()之前呼叫srand()給引數seed指定乙個值,那麼rand()就會將seed的值作為產生偽隨機數的初始值,如果使用者在rand()前沒有呼叫srand(),系統會預設將1作為偽隨機數的初始值,如果給了乙個定值,每次rand()產生的隨機數序列就一樣了,所以為了避免發生上述情況,通常用srand((unsigned)time(0))或者srand((unsigned)time(null))來產生種子,如果覺得時間間隔太小,可以在(unsigned)time(0)或者(unsigned)time(null)後面乘以某個合適值,如srand((unsigned)time(null)*10)。
如果不想用
srand((
unsigned
)time
(null)+
(unsigned
)rand()
);
也可以
srand((
unsigned
)time
(null))
;for
(i=0
;i<
5;i++
)
希望可以幫到你,加油!
2020.5
.6
C語言生成隨機數筆記
生成指定範圍內的隨機數字 rand 函式是按指定的順序來產生整數,因此每次執行上面的語句都列印相同的兩個值,所以說c語言的隨機並不是真正意義上的隨機,有時候也叫偽隨機數。使用 rand 生成隨機數之前需要用隨機發生器的初始化函式 srand unsigned seed 進行偽隨機數序列初始化,see...
C 隨機數筆記
要取得 a,b 的隨機整數,使用 rand b a a 要取得 a,b 的隨機整數,使用 rand b a 1 a 要取得 a,b 的隨機整數,使用 rand b a a 1 通用公式 a rand n 其中的a是起始值,n是整數的範圍。要取得a到b之間的隨機整數,另一種表示 a int b ran...
C 隨機數筆記
rand 和srand 要一起使用,其中srand 用來初始化隨機數種子,rand 用來產生隨機數。因為預設情況下隨機數種子為1,而相同的隨機數種子產生的隨機數是一樣的,失去了隨機性的意義,所以為使每次得到的隨機數不一樣,用函式srand 初始化隨機數種子。srand 的引數,用time函式值 即當...