生成隨機數(shù)時需要我們指定一個種子,如果在程序內(nèi)循環(huán),那么下一次生成隨機數(shù)時調(diào)用上一次的結(jié)果作為種子。但如果分兩次執(zhí)行程序,那么由于種子相同,生成的“隨機數(shù)”也是相同的。

創(chuàng)新互聯(lián)主營當(dāng)陽網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營網(wǎng)站建設(shè)方案,成都app軟件開發(fā)公司,當(dāng)陽h5微信小程序搭建,當(dāng)陽網(wǎng)站營銷推廣歡迎當(dāng)陽等地區(qū)企業(yè)咨詢
while(n10) { int m = rand()%10; //獲取一個0~9的隨機數(shù)。 if(f[m]) continue;//該數(shù)之前已經(jīng)獲取到過。 a[n++] = m;//將該數(shù)存入數(shù)組。 f[m] = 1;//標(biāo)記該數(shù)已經(jīng)獲取過。
srand()用來設(shè)置rand()產(chǎn)生隨機數(shù)時的隨機數(shù)種子。參數(shù)seed必須是個整數(shù),通常可以利用geypid()或time(0)的返回值來當(dāng)做seed。如果每次seed都設(shè)相同值,rand()所產(chǎn)生的隨機數(shù)值每次就會一樣。
\x0d\x0a\x0d\x0aC++中常用rand()函數(shù)生成隨機數(shù),但嚴(yán)格意義上來講生成的只是偽隨機數(shù)(pseudo-random integral number)。
srand(time(0));/*設(shè)置種子*/ n=rand();這樣就可以產(chǎn)生0到7FFF之間的任意隨即數(shù)了。
C語言中隨機函數(shù)需要使用到srand和rand。srand((unsigned)time(NULL))則使用系統(tǒng)定時/計數(shù)器的值作為隨機種子。
生成隨機數(shù)時需要我們指定一個種子,如果在程序內(nèi)循環(huán),那么下一次生成隨機數(shù)時調(diào)用上一次的結(jié)果作為種子。但如果分兩次執(zhí)行程序,那么由于種子相同,生成的“隨機數(shù)”也是相同的。
在C語言里所提供的隨機數(shù)發(fā)生器的用法:現(xiàn)在的C編譯器都提供了一個基于ANSI標(biāo)準(zhǔn)的偽隨機數(shù)發(fā)生器函數(shù),用來生成隨機數(shù)。它們就是rand()和srand()函數(shù)。
C語言提供了一些庫函數(shù)來實現(xiàn)隨機數(shù)的產(chǎn)生。
1、使用rand函數(shù)生成隨機數(shù),rand隨機生成一個位于0 ~ RAND_MAX之間的整數(shù)。如下圖中,我們直接使用rand方法生成10個隨機數(shù)。
2、:srand() 里的值必須是動態(tài)變化的,否則得到的隨機數(shù)就是一個固定數(shù)2:其實可以不用寫srand() ,只用rand()就可以了,省事,簡單,例子如下如果我們想得到一個 0-60的隨機數(shù)那么可以寫成int i;i=rand()%60;就可以了。
3、\x0d\x0a\x0d\x0a在工程應(yīng)用時,我們一般將系統(tǒng)當(dāng)前時間(Unix時間)作為種子,這樣生成的隨機數(shù)更接近于實際意義上的隨機數(shù)。
4、在C語言里所提供的隨機數(shù)發(fā)生器的用法:現(xiàn)在的C編譯器都提供了一個基于ANSI標(biāo)準(zhǔn)的偽隨機數(shù)發(fā)生器函數(shù),用來生成隨機數(shù)。它們就是rand()和srand()函數(shù)。
分享題目:c語言生成多個隨機數(shù)函數(shù) c語言隨機產(chǎn)生兩個數(shù)
URL分享:http://www.chinadenli.net/article26/dehjpcg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、商城網(wǎng)站、面包屑導(dǎo)航、做網(wǎng)站、定制網(wǎng)站、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)