欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

C++中rand與srand如何使用-創(chuàng)新互聯(lián)

這篇文章給大家介紹C++中rand與srand如何使用,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對(duì)大家能有所幫助。

10年積累的成都網(wǎng)站建設(shè)、成都做網(wǎng)站經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有禹城免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

rand()函數(shù)產(chǎn)生隨機(jī)數(shù)

我們知道rand()函數(shù)可以用來產(chǎn)生隨機(jī)數(shù),但是這不是真正意義上的隨機(jī)數(shù),是一個(gè)偽隨機(jī)數(shù),是根據(jù)一個(gè)數(shù)(我們可以稱它為種子)為基準(zhǔn)以某個(gè)遞推公式推算出來的一系列數(shù),當(dāng)這系列數(shù)很大的時(shí)候,就符合正態(tài)公布,從而相當(dāng)于產(chǎn)生了隨機(jī)數(shù),但這不是真正的隨機(jī)數(shù),當(dāng)計(jì)算機(jī)正常開機(jī)后,這個(gè)種子的值是定了的,除非你破壞了系統(tǒng)。

1.rand()

功能:

隨機(jī)數(shù)發(fā)生器

用法:

intrand(void)

所在頭文件:

stdlib.h

rand()的內(nèi)部實(shí)現(xiàn)是用線性同余法做的,它不是真的隨機(jī)數(shù),因其周期特別長(zhǎng),故在一定的范圍里可看成是隨機(jī)的。

rand()返回一隨機(jī)數(shù)值的范圍在0至RAND_MAX間。RAND_MAX的范圍最少是在32767之間(int)。用unsignedint雙字節(jié)是65535,四字節(jié)是4294967295的整數(shù)范圍。0~RAND_MAX每個(gè)數(shù)字被選中的機(jī)率是相同的。

用戶未設(shè)定隨機(jī)數(shù)種子時(shí),系統(tǒng)默認(rèn)的隨機(jī)數(shù)種子為1。

rand()產(chǎn)生的是偽隨機(jī)數(shù)字,每次執(zhí)行時(shí)是相同的;若要不同,用函數(shù)srand()初始化它。

2.srand()

功能:

初始化隨機(jī)數(shù)發(fā)生器

用法:

voidsrand(unsignedintseed)

所在頭文件:

stdlib.h

srand()用來設(shè)置rand()產(chǎn)生隨機(jī)數(shù)時(shí)的隨機(jī)數(shù)種子。參數(shù)seed必須是個(gè)整數(shù),如果每次seed都設(shè)相同值,rand()所產(chǎn)生的隨機(jī)數(shù)值每次就會(huì)一樣。

3.使用當(dāng)前時(shí)鐘作為隨機(jī)數(shù)種子

rand()產(chǎn)生的隨機(jī)數(shù)在每次運(yùn)行的時(shí)候都是與上一次相同的。若要不同,用函數(shù)srand()初始化它??梢岳胹rand((unsignedint)(time(NULL))的方法,產(chǎn)生不同的隨機(jī)數(shù)種子,因?yàn)槊恳淮芜\(yùn)行程序的時(shí)間是不同的。

4.產(chǎn)生隨機(jī)數(shù)的用法

1)給srand()提供一個(gè)種子,它是一個(gè)unsignedint類型;

2)調(diào)用rand(),它會(huì)根據(jù)提供給srand()的種子值返回一個(gè)隨機(jī)數(shù)(在0到RAND_MAX之間);

3)根據(jù)需要多次調(diào)用rand(),從而不間斷地得到新的隨機(jī)數(shù);

4)無論什么時(shí)候,都可以給srand()提供一個(gè)新的種子,從而進(jìn)一步"隨機(jī)化"rand()的輸出結(jié)果。

0~RAND_MAX之間的隨機(jī)數(shù)程序

#include

#include

#include

usingnamespacestd;

intmain()

{

srand((unsigned)time(NULL));

for(inti=0;i<10;i++)   cout<<rand()<<'/t';   cout<<endl;   return0;   }   5.產(chǎn)生一定范圍隨機(jī)數(shù)的通用表示公式   要取得[a,b)的隨機(jī)整數(shù),使用(rand()%(b-a))+a;   要取得[a,b]的隨機(jī)整數(shù),使用(rand()%(b-a+1))+a;   要取得(a,b]的隨機(jī)整數(shù),使用(rand()%(b-a))+a+1;   通用公式:a+rand()%n;其中的a是起始值,n是整數(shù)的范圍。   要取得a到b之間的隨機(jī)整數(shù),另一種表示:a+(int)b*rand()/(RAND_MAX+1)。   要取得0~1之間的浮點(diǎn)數(shù),可以使用rand()/double(RAND_MAX)。

關(guān)于C++中rand與srand如何使用就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

當(dāng)前題目:C++中rand與srand如何使用-創(chuàng)新互聯(lián)
分享鏈接:http://chinadenli.net/article44/dgciee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈App設(shè)計(jì)、網(wǎng)站設(shè)計(jì)公司、動(dòng)態(tài)網(wǎng)站、搜索引擎優(yōu)化、移動(dòng)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)