c語言產生隨機數的方法

2021-07-11 08:45:00 字數 1313 閱讀 6924

//產生互不相同的六個整數數

#include

#include

#include

int main()

//產生互不相同的六個整數數

#include

#include

#include

int main()

//產生互不相同的六個整數數

#include

#include

//#include

int main()

for(int j=0;j<6;j++)

printf("%d\n",a[j]);

return 0;

}把srand函式注釋掉了 結果也是產生了不同的六個數 但每次執行的結果都是那六個數,而加上srand後每次產生的六個數與上次產生的六個數都不同!

//產生互不相同的六個整數數  在0-n範圍內的**

#include

#include

#include

int main()

for (int j = 0; j<6; j++)

printf("%d\n", a[j]);

return 0;

}

n--m之間的隨機數

一樣的   我們只要對rand()進行一些 符號操作就行了;

n+rand()%(m-n+1);    這樣就可以了

隨機浮點數的產生

浮點數的隨機產生

rand()%n   **********= 0~n-1     那麼  我們再除以 n  就行了

可以表示為:   (rand()%n)/(n*1.0)      //這裡注意下 隱式轉換   低------>高

//產生互不相同的六個整數數

#include

#include

#include

int main()

for (int j = 0; j<6; j++)

printf("%f\n", a[j]);

return 0;

}

其實上面的**中有的產生的隨機數會有重複:

下面給出另外的一種方法,它能夠很好的產生隨機數 例如產生(0-n)的隨機數思想是先哪個陣列儲存0-n,然後對他們的順序進行打亂**如下

#include

#include

using namespace std;

int main()

{int a[10],i,n,pos,t;

n=10;

for( i=0;i

C語言產生隨機數的方法

include int rand void void srand unsigned int n 1 rand 函式會產生0至rand max 其值大於等於36767 之間的偽隨機數 pseudorandom 計算機不會產生絕對隨機的隨機數,計算機只能產生 偽隨機數 其實絕對隨機的隨機數只是一種理想的...

C 語言產生隨機數的方法

在c語言中,rand 函式可以用來產生隨機數,但是這不是真真意義上的隨機數,是乙個偽隨機數,是根據乙個數,我們可以稱它為種子,為基準以某個遞推公式推算出來的一係數,當這系列數很大的時候,就符合正態公布,從而相當於產生了隨機數,但這不是真正的隨機數,當計算機正常開機後,這個種子的值是定了的,除非你破壞...

C語言產生隨機數的方法

在c語言中,rand 函式可以用來產生隨機數,但是這不是真真意義上的隨機數,是乙個偽隨機數,是根據乙個數,我們可以稱它為種子,為基準以某個遞推公式推算出來的一係數,當這系列數很大的時候,就符合正態公布,從而相當於產生了隨機數,但這不是真正的隨機數,當計算機正常開機後,這個種子的值是定了的,除非你破壞...