當前位置:首頁 » 編程語言 » 隨機函數c語言使用
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

隨機函數c語言使用

發布時間: 2022-08-16 12:39:50

㈠ 隨機函數rand怎麼用c語言

一、首先包含必要的頭文件

#include<stdio.h>

這個包含用於輸入輸出的函數。

#include<stdlib.h>

這個包含初始化隨機數種子、產生隨機數的函數。

#include<time.h>

這個包含與時間有關的函數,初始化隨機數種子時可以用到。

二、使用如下公式產生在區間[min,max]之間的隨機數

int r=rand()%(max-min+1)+min;

三、一個例子,產生10個[1,100]的隨機整數

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main()

{

const int min=1,max=100;

int i,r;

//用當前時間初始化隨機數種子

srand(time(NULL));

printf("隨機產生的10個1-100的整數是:");

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

{

r=rand()%(max-min+1)+min;

printf("%d,",r);

}

return 0;

}

四、運行結果的截圖

截圖2

㈡ 在C語言中如何使用隨機函數

先定義一個變數,比如:int
m;然後就直接m=random();如果隨機數有范圍的話(比如在0到54之間),就可以對55求余,即m=random()%55;

㈢ C語言中的rand()函數怎麼用

rand()

rand()函數用來產生隨機數,但是,rand()的內部實現是用線性同餘法實現的,是偽隨機數,由於周期較長,因此在一定范圍內可以看成是隨機的。

rand()會返回一個范圍在0到RAND_MAX(至少是32767)之間的偽隨機數(整數)。

在調用rand()函數之前,可以使用srand()函數設置隨機數種子,如果沒有設置隨機數種子,rand()函數在調用時,自動設計隨機數種子為1。隨機種子相同,每次產生的隨機數也會相同。

rand()函數需要的頭文件是:<stdlib.h>

rand()函數原型:int rand(void);

使用rand()函數產生1-100以內的隨機整數:int number1 = rand() % 100+1。

srand()

srand()函數需要的頭文件仍然是:<stdlib.h>

srand()函數原型:void srand (usigned int seed);

srand()用來設置rand()產生隨機數時的隨機數種子。參數seed是整數,通常可以利用time(0)或getpid(0)的返回值作為seed。

使用rand()和srand()產生1-100以內的隨機整數:

srand(time(0));

int number1 = rand() % 100+1。

㈣ c語言產生隨機數的函數

在c語言中要產生隨機數可以用rand函數。

默認情況下這個函數產生的隨機整數的范圍是[0,RAND_MAX]。

RAND_MAX是一個預定義的宏,其值等於平台上int類型的最大值。

可以使用如下公式來產生一個[min,max]之間的隨機整數:

rand()%(max-min+1)+min

下面這個例子可以產生10個[1,100]的隨機數,並輸出了它們:

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int main()

{

int i;

//初始化隨機數種子

srand(time(NULL));

//printf("%d ",RAND_MAX);

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

printf("%d ",rand()%100+1);

return 0;

}

下面是運行結果的截圖:

㈤ 怎麼使用c語言的隨機函數randomize()

randomize()不是隨機數生成函數,而是初始化隨機數生成器的函數,而且,它不是一個C語言標准庫函數,只能在win32環境中使用。生成隨機數要用rand()函數:
#include
<stdlib.h>
#include
<stdio.h>
int
main(void)
{
int
i;
srand(time(NULL));
for
(i=0;i<7;++i)
printf("%d\t",rand()%10);
return
0;
}

㈥ c語言中rand()函數怎麼用

rand函數功能為獲取一個偽隨機數(偽隨機數的概念下面會有介紹)。

一、函數名:

rand();


二、聲明:

int rand();


三、所在頭文件:

stdlib.h


四、功能:

返回一個偽隨機數。之所以說是偽隨機數,是因為在沒有其它操作下,每次執行同一個程序,調用rand得到的隨機數序列是固定的(不是真正的「隨機」)。


五、為了使rand的結果更「真」一些,也就是令其返回值更具有隨機性(不確定性),C語言在stdlib.h中還提供了srand函數,通過該函數可以設置一個隨機數種子,一般用當前時間的毫秒數來做參數。通過time(NULL)可以獲取到當前時間的毫秒值(該函數位於time.h)中。


六、使用rand的流程可以總結為:

1 調用srand(time(NULL))設置隨機數種子。

2 調用rand函數獲取一個或一系列隨機數。

需要注意的是,srand只需要在所有rand調用前,被調用一次即可,沒必要調用多次。


七、以下是隨機獲取10個整型值並輸出的例子,輔助理解。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>

intmain()
{
inti;

srand(time(NULL));//設置隨機數種子。

for(i=0;i<10;i++)//運行10次。
printf("%d ",rand());//每次獲取一個隨機數並輸出。

return0;
}

㈦ c語言中rand函數的使用方法

它的返回值就是求取隨機的值,所以如果沒有對數有要求,直接這樣定:
printf("%d", rand());就能輸出一個隨機數.但如果對數有要求,如小數或在一定值以內:
小數:rand()+rand()/100.0 //100.0後面的.0必須寫,100是說明求兩位小數,你可以自己加大.
一定范圍:rand()%10+0 //10是頂和底的差,0是底,就是說求10到20之間的數就是:rand()%10+10
但是調用它必須先調用srand()來生成隨機種子,如果你沒調用它,系統會自動調用.但是srand是有個參數的,種子就是根據這個參數來定的,所以這個參數決定著生成的隨機數.如果你在代碼里寫死了它:srand(10);那這樣rand生成的隨機數就也被定格在了一定量,所以不要這樣用.要這樣寫:
srand(time(NULL));time的返回值是當前系統時間.因為時間不同,所取的數值也就不同.這樣隨機數就真正的隨機了.
time在中聲明
rand,srand在中聲明.

㈧ 請問c語言中的隨機函數怎麼用

rand()函數 返回值是產生一個隨機數,這個返回值雖然是隨機數,但是可能會發現,每回產生的都一樣,比如:

#include <iostream>
using namespace std;
void main()
{
for(int i=0;i<3;i++){
cout<<rand()<<endl;
}
}

運行程序後發現,產生的隨機數,雖然每次運行程序時是隨機數,但是,後來再運行程序,發現與上幾次結果一樣。

這是因為,隨機數的起始值都一樣。
為了產生真正的隨機數,就應該設置隨機數的起始值,這個要利用srand()函數。

將上面程序改為:
#include <iostream>
using namespace std;
void main()
{
cout<<"請輸入隨機數的起始值"<<endl;
int num;
cin>>num;
srand(num);
for(int i=0;i<3;i++){
cout<<rand()<<endl;
}
}

運行程序 就會發現 輸入的起始值不同,產生的隨機數就不同。
當然 也可以產生時間隨機數,這個要用到c語言time.h中的程序,這個可以供你自己思考,自己解決問題,樂趣更多呢~呵呵~

啰嗦這么多 希望對您有所幫助!

㈨ c語言的隨機函數怎樣用、

就像是樓上寫的
通常隨機函數rand()
帶有時間種子的隨機函數srand(time(0))在用rand()實現。
記住加相關頭文件

㈩ c語言隨機數函數是什麼

C語言隨機函數主要用於實現一組隨機數的生成。

代碼示例如下:

#include<stdio.h>

#include<stdlib.h>

int main ()

{

int a;

a=rand()%4;

printf("%d ",a);

return 0;

}

C預先生成一組隨機數,每次調用隨機函數時從指針所指向的位置開始取值,因此使用rand()重復運行程序產生的隨機數都是相同的,可以通過srand()函數來改變指針位置。

(10)隨機函數c語言使用擴展閱讀:

C語言隨機函數指針位置

void srand( unsigned int seed )

改變隨機數表的指針位置(用seed變數控制)。一般配合time(NULL)使用,因為時間每時每刻都在改變,產生的seed值都不同。

基於毫秒級隨機數產生方法:

#include<windows.h>

種子設為:srand(unsigned int seed);

srand(GetTickCount());

參考資料:網路-C語言隨機函數