C語言中產生隨機數的函式是什麼

時間 2023-03-08 10:55:08

1樓:匿名使用者

c語言中產生隨機數的相關函式主要包括srand和rand函式,兩者配合生成隨機資料,測試**如下,#include

#include

#include

void main()

srand(time(null));

for(i=0;i<5;i++)

for(j=0;j<5;j++)

p[i][j]=rand()%100+1;//產生1-100的隨機數存入陣列p中。

printf("二維陣列p為:")

for(i=0;i<5;i++)

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

srand(unsigned seed)通過引數seed改變系統提供的種子值,從而可以使得每次呼叫rand函式生成的偽隨機數序列不同,從而實現真正意義上的「隨機」。通常可以利用系統時間來改變系統的種子值,即srand(time(null)),可以為rand函式提供不同的種子值,進而產生不同的隨機數序列。

2樓:匿名使用者

#include

#include

#include

void main()

這樣產生的隨機數就是0-99之間的,這二個函式的工作過程如下:

1) 首先給srand()提供一個種子,它是一個unsigned int型別,其取值範圍從0~65535;

2) 然後呼叫rand(),它會根據提供給srand()的種子值返回一個隨機數(在0到32767之間)

3) 根據需要多次呼叫rand(),從而不間斷地得到新的隨機數;

4) 無論什麼時候,都可以給srand()提供一個新的種子,從而進一步「隨機化」rand()的輸出結果。

3樓:匿名使用者

rand函式也是呼叫dos的時鐘,進行的偽隨機函式。

你也可以使用時鐘來模擬隨機函式。

可以試用gettime這個函式:

long int myrand(int x)

c語言如何程式設計產生隨機數?

C語言中產生隨機數,C語言怎樣產生一定範圍的隨機數?

巧金蘭嵇嫣 樓上這樣得出的隨機值不準確,不信你執行幾次試試,都是同一個數。正確應該這樣。首先加標頭檔案 include include 然後在主函式裡面寫 inti srand time 0 i rand 100 1 printf d i 隨機數主要有兩個函式 一個種子產生函式 void srand...

c語言中取隨機數的函式,C語言中取隨機數的函式

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

c 中產生不重複的隨機數

解題思路 這個題目要解決兩個問題 一是產生隨機數 二是不能重複。第一個問題 產生隨機數。在c 中要產生隨機數必須用到兩個函式 srand 和rand 函式,使用這兩個函式必須包含標頭檔案 其中rand 是產生一個偽隨機數,比如 int a rand 函式返回值的取值範圍是int型別的取值範圍,如果要...