1、Random意思是返回一個(gè)0~num-1之間的隨機(jī)數(shù)。 random(num)是在stdlib.h中的一個(gè)宏定義。num和函數(shù)返回值都是整型數(shù)。
創(chuàng)新互聯(lián)公司是一家網(wǎng)站設(shè)計(jì)公司,集創(chuàng)意、互聯(lián)網(wǎng)應(yīng)用、軟件技術(shù)為一體的創(chuàng)意網(wǎng)站建設(shè)服務(wù)商,主營(yíng)產(chǎn)品:成都響應(yīng)式網(wǎng)站建設(shè)公司、成都品牌網(wǎng)站建設(shè)、成都全網(wǎng)營(yíng)銷(xiāo)。我們專(zhuān)注企業(yè)品牌在網(wǎng)站中的整體樹(shù)立,網(wǎng)絡(luò)互動(dòng)的體驗(yàn),以及在手機(jī)等移動(dòng)端的優(yōu)質(zhì)呈現(xiàn)。網(wǎng)站設(shè)計(jì)、做網(wǎng)站、移動(dòng)互聯(lián)產(chǎn)品、網(wǎng)絡(luò)運(yùn)營(yíng)、VI設(shè)計(jì)、云產(chǎn)品.運(yùn)維為核心業(yè)務(wù)。為用戶(hù)提供一站式解決方案,我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶(hù),為客戶(hù)提供賞析悅目的作品,網(wǎng)站的價(jià)值服務(wù)。
2、這段程序?qū)崿F(xiàn)是產(chǎn)生十個(gè)隨機(jī)數(shù),srand函數(shù)是輸入系統(tǒng)隨機(jī)種子,程序一般都是采用時(shí)間作為隨機(jī)種子。
3、總結(jié)一下C語(yǔ)言random的用法:srand((int)time(NULL))用于設(shè)定隨機(jī)數(shù)種子。 rand()%100,產(chǎn)生0-99的隨機(jī)數(shù)。如果要產(chǎn)生16-59之間的數(shù),你可以這樣寫(xiě):rand()%44+16(這里44由59-16+1得到)。
4、隨機(jī)函數(shù)就是產(chǎn)生數(shù)的函數(shù),c語(yǔ)言里有rand(),srand()等函數(shù)。
注意:srand函數(shù)在頭文件#include stdlib.h中。
而srandom( x) 這個(gè)函數(shù)就是初始化隨機(jī)數(shù)產(chǎn)生器,設(shè)定隨機(jī)數(shù)種子用的。給定的x的就是隨機(jī)數(shù)種子。可以驗(yàn)證,當(dāng)你多次調(diào)用srandm(x)時(shí),如果x取值相同,則得到的隨機(jī)數(shù)數(shù)列是一樣的。
在c語(yǔ)言中要產(chǎn)生隨機(jī)數(shù)可以用rand函數(shù)。默認(rèn)情況下這個(gè)函數(shù)產(chǎn)生的隨機(jī)整數(shù)的范圍是[0,RAND_MAX]。RAND_MAX是一個(gè)預(yù)定義的宏,其值等于平臺(tái)上int類(lèi)型的最大值。
1、在c語(yǔ)言里面,兩個(gè)函數(shù)包含在頭文件里面,c++里面,標(biāo)準(zhǔn)庫(kù)(被包含于中). srand函數(shù)是隨機(jī)數(shù)發(fā)生器的初始化函數(shù)。 原型:void srand(unsigned seed); rand函數(shù)用來(lái)產(chǎn)生隨機(jī)數(shù),當(dāng)然是偽隨機(jī)數(shù)。
2、直接用rand() 產(chǎn)生的一套隨機(jī)數(shù)是固定不變的。
3、srand()函數(shù)需要的頭文件仍然是:stdlib.h srand()函數(shù)原型:void srand (usigned int seed);srand()用來(lái)設(shè)置rand()產(chǎn)生隨機(jī)數(shù)時(shí)的隨機(jī)數(shù)種子。參數(shù)seed是整數(shù),通常可以利用time(0)或getpid(0)的返回值作為seed。
4、rand()函數(shù),一般根srand()函數(shù)一起用。它們?cè)谝黄穑饔檬牵寒a(chǎn)生一個(gè)隨機(jī)數(shù)。通常格式為:srand ( (unsigned) time (NULL) );a=rand()%x; //a,x,均為整型變量,其中,x在之前應(yīng)被賦值。
srand(time(0)) 就是給這個(gè)算法一個(gè)啟動(dòng)種子,也就是算法的隨機(jī)種子數(shù),用1970.1至今的秒數(shù),初始化隨機(jī)數(shù)種子。Srand是種下隨機(jī)種子數(shù),你每回種下的種子不一樣,用Rand得到的隨機(jī)數(shù)就不一樣。
srand函數(shù)就用來(lái)初始化這個(gè)發(fā)生器,參數(shù)time(0)能夠生成從1970年1月1日到當(dāng)前機(jī)器時(shí)間的秒數(shù),這個(gè)數(shù)在你每次執(zhí)行程序的時(shí)候都會(huì)不斷增長(zhǎng)、變化,所以用它當(dāng)做種子來(lái)初始化發(fā)生器,就會(huì)生成不同的隨機(jī)數(shù)了。
代碼里的srand(time(0))的意思是:用當(dāng)前時(shí)間來(lái)設(shè)定rand函數(shù)所用的隨機(jī)數(shù)產(chǎn)生演算法的種子值。其中,time(time_t *t); 是C標(biāo)準(zhǔn)庫(kù)函數(shù),如果t是空指針,直接返回當(dāng)前時(shí)間。
srand(time(0))放到循環(huán)前面就可以了。
是一樣的。都是0 而 time(time_t *time)里面的time_t *time,也就是給指針賦值個(gè)0,就是:time = NULL,是允許的。
在c語(yǔ)言里面,兩個(gè)函數(shù)包含在頭文件里面,c++里面,標(biāo)準(zhǔn)庫(kù)(被包含于中). srand函數(shù)是隨機(jī)數(shù)發(fā)生器的初始化函數(shù)。 原型:void srand(unsigned seed); rand函數(shù)用來(lái)產(chǎn)生隨機(jī)數(shù),當(dāng)然是偽隨機(jī)數(shù)。
srand()函數(shù)需要的頭文件仍然是:stdlib.h srand()函數(shù)原型:void srand (usigned int seed);srand()用來(lái)設(shè)置rand()產(chǎn)生隨機(jī)數(shù)時(shí)的隨機(jī)數(shù)種子。參數(shù)seed是整數(shù),通常可以利用time(0)或getpid(0)的返回值作為seed。
得到的 b[0]==a[0]; b[1]==a[1];...b[9]==a[9];用 srand() 生成新種子,那么 新的一套 和 老 的 一套 隨機(jī)數(shù) 次序就 不一樣了,數(shù)值也不完全一樣了,這樣模擬 的 偽隨機(jī) 就會(huì) 接近 真隨機(jī)。
rand()函數(shù),一般根srand()函數(shù)一起用。它們?cè)谝黄穑饔檬牵寒a(chǎn)生一個(gè)隨機(jī)數(shù)。通常格式為:srand ( (unsigned) time (NULL) );a=rand()%x; //a,x,均為整型變量,其中,x在之前應(yīng)被賦值。
srand(num);for(int i=0;i3;i++){ coutrand()endl;} } 運(yùn)行程序 就會(huì)發(fā)現(xiàn) 輸入的起始值不同,產(chǎn)生的隨機(jī)數(shù)就不同。
rand()函數(shù),一般根srand()函數(shù)一起用。它們?cè)谝黄穑饔檬牵寒a(chǎn)生一個(gè)隨機(jī)數(shù)。通常格式為:srand ( (unsigned) time (NULL) );a=rand()%x; //a,x,均為整型變量,其中,x在之前應(yīng)被賦值。
在標(biāo)準(zhǔn)的C庫(kù)中函數(shù)rand()可以生成0~RAND_MAX之間的一個(gè)隨機(jī)數(shù),其中RAND_MAX 是stdlib.h 中定義的一個(gè)整數(shù),它與系統(tǒng)有關(guān)。
srand()函數(shù)需要的頭文件仍然是:stdlib.h srand()函數(shù)原型:void srand (usigned int seed);srand()用來(lái)設(shè)置rand()產(chǎn)生隨機(jī)數(shù)時(shí)的隨機(jī)數(shù)種子。參數(shù)seed是整數(shù),通常可以利用time(0)或getpid(0)的返回值作為seed。
首先,打開(kāi)C語(yǔ)言編譯器,新建一個(gè)初始.cpp文件,例如:test.cpp。
先用srand函數(shù)設(shè)置一個(gè)種子,一般為當(dāng)前時(shí)間,然后使用rand函數(shù)產(chǎn)生隨機(jī)數(shù),如產(chǎn)生a~b的隨機(jī)數(shù)使用表達(dá)式rand()%(b-a+1)+a。注意:srand函數(shù)在頭文件#include stdlib.h中。
可以使用C語(yǔ)言標(biāo)準(zhǔn)庫(kù)中的srand()和rand()來(lái)生成隨機(jī)數(shù),同時(shí)要生成1~99之間的隨機(jī)數(shù),只需要將生成的隨機(jī)數(shù)與99整除,取其余數(shù)+1即可保證所有產(chǎn)生的隨機(jī)數(shù)在[1,99]的區(qū)間之內(nèi)。
分享題目:c語(yǔ)言srand函數(shù)有毒 c中srand函數(shù)
轉(zhuǎn)載源于:http://chinadenli.net/article8/dehioip.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站導(dǎo)航、網(wǎng)站排名、外貿(mào)建站、標(biāo)簽優(yōu)化、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容