首先我們要對rand&srand有個總體的看法:srand初始化隨機種子,rand產生隨機數。
定義函式 : int rand(void)函式說明 :
因為rand的內部實現是用線性同餘法做的,他不是真的隨機數,只不過是因為其週期特別長,所以有一定的範圍裡可看成是隨機的,rand()會返回一隨機數值,範圍在0至rand_max 間。在呼叫此函式產生隨機數前,必須先利用srand()設好隨機數種子,如果未設隨機數種子,rand()在呼叫時會自動設隨機數種子為1。rand ()產生的是假隨機數字,每次執行時是相同的。若要不同,以不同的值來初始化它.初始化的函式就是srand()。
返回值:
返回0至rand_max之間的隨機整數值,rand_max的範圍最少是在32767之間(int),即雙位元組(16位數)。若用unsigned int 雙位元組是65535,四位元組是4294967295的整數範圍。
0~rand_max每個數字被選中的機率是相同的。
示例如下:
#include#include#include//產生range_min-range_max之間的隨機數,必須初始化種子,否則每次結果都一樣int main(void)
return 0;
}
clock計算的是程序實際使用的各種時間,time是wall time,即鐘錶時間,此時間內作業系統可能會排程多個程序執行。
函式名: clock
功 能: 確定處理器時間
用 法: clock_t clock(void);
程式例:
#include#include#includeint main(void)
而time()是個時間的函式,time(null)就是去當前的時間
程式例項:
#include#includeint main(void)
rand 和 srand產生隨機數
在c語言中,rand 函式可以用來產生隨機數,但是這不是真真意義上的隨機數,是 乙個偽隨機數,是根據乙個數,我們可以稱它為種子,為基準以某個遞推公式推算出來的一係數,當這系列數很大的時候,就符合正態公布,從而相當於產生了隨機 數,但這不是真正的隨機數,當計算機正常開機後,這個種子的值是定了的,除非你...
rand 和srand 產生偽隨機數
標準庫 被包含於 中 提供兩個幫助生成偽隨機數的函式 函式一 int rand void 從srand seed 中指定的seed開始,返回乙個 seed,rand max 0x7fff 間的隨機整數。函式二 void srand unsigned seed 引數seed是rand 的種子,用來初始...
C 利用srand和rand產生隨機數
他人部落格,時間久了,忘記 轉的了。以後發現再補充出處。產生一到十的十個隨機數 include include include include using namespace std define max 10 int main int main srand unsigned time null f...