C語言產生隨機數

2021-07-23 10:24:30 字數 1215 閱讀 4759

c語言中可以利用rand()函式產生偽隨機數,也可以使用srand()配合rand()一起使用獲得真隨機數。

int rand(void);

void srand (unsigned

int n);

#include

#include

#include

int main()

//使用rand()函式產生0-20偽隨機數

printf("\n\nrand()函式產生1-20的偽隨機序列 :\n");

for (int i = 0; i < 10; i++)

//使用rand()函式產生a-b的偽隨機數a=3;b=42;(rand()%(b-a)+a)

printf("\n\nrand()函式產生3-42的偽隨機序列 :\n");

for (int i = 0; i < 10; i++)

//關於浮點數可以使用rand_max

//用時間作為種子,獲得隨機數

printf("\n\n獲取真隨機數:\n");

srand((unsigned)time(null));

for (int i = 0; i < 10; i++)

//採用時間作為種子是為了保證獲得不同的隨機序列

//我們會發現相同的種子可以獲得相同的隨機序列

printf("\n\n採用相同的種子獲得相同的時間序列:\n");

printf("\n序列1的值:\n");

srand(1);

for (int i = 0; i < 10; i++)

printf("\n序列2的值:\n");

srand(1);

for (int i = 0; i < 10; i++)

printf("\n序列3的值:\n");

srand(1);

for (int i = 0; i < 10; i++)

return

0;}

執行結果

關於浮點數的產生方法,可以利用rand_max

0-1之間:

rand()/(double)(rand_max);
參考文獻:

C語言產生隨機數

c語言產生隨機數需要呼叫stdlib.h標頭檔案中的兩個函式 int rand void 產生乙個0到rand max之間的隨機整數。rand max定義在stdlib.h,其值為2147483647 void srand int seed 用於初始化種子,便於每次產生不同的隨機數。include ...

C語言產生隨機數

1.隨機數 數學上產生的都是偽隨機數,真正的隨機數是使用物理方法產生的。2.隨機數種子 隨機數的產生是由算術規則產生的,srand seed 的隨機數種子 seed 不同,rand 的隨機數值就不同,如果每次的seed一樣,則rand 產生的隨機數也將一樣。因此 要產生隨機數,seed也必須是隨機的...

C語言 隨機數產生

1 無法預知的數字叫隨機數 2 計算機無法產生真正的隨機數,產生的是偽隨機數 3 為了使用這個標準函式需要包含stdlib.h標頭檔案 4 srand標準函式用來設定隨機數種子,這個函式把乙個整數作為種子使用,不同的種子產生的隨機數不同,為 了使用這個標準函式也需要包含stdlib.h標頭檔案 5 ...