能不能寫個隨機返回乙個數的函式(不能用rand )

2025-02-07 02:25:21 字數 4778 閱讀 6503

1樓:函凌霜

使用srand來作為初始化種子,在同乙個程式中這個種子是固定的隨機輸出十個0-100之間的整數。

#include

#include

#include

void main( void )

int i,k;

srand( (unsigned)time( null )for( i = 0; i < 10;i++k=rand()%100;

printf( "k=%d", k );

明白不?rand只是偽隨機數,要改變他的初始值,才可以。

2樓:逍遙一蜘蛛

你可以將rand()函式與時間關聯起來!實現木時刻得隨機數!這樣一般不會出現連著執行兩次程式結果一樣得事情了!

3樓:匿名使用者

是不是沒用srand()函式初始化呀?用rand()函式之前要用這個函式進行初始化,一般用以下格式呼叫:

srand(time(null));

注意,要包含檔案。

不能將srand()語句做在迴圈中,將它轉移到迴圈之前即可恢復正常。

rand()隨機函式產生的值的範圍?

4樓:網友

cplusplus中有這樣的介紹:

rand函式產生乙個0到rand_max的偽隨機數,這裡的rand_max因不同的實現而異,但rand_max至少為32767。(比如,msvc中通常為0x7fff,即32767,而linux平臺下gcc中rand_max通常會遠遠大於這個值)

有一些其他程式語言的rand函式確實是產生乙個[, 之間的浮點數。比如matlab。

在c中,rand() 32會產生乙個[0, 32)之間的偽隨機數,那麼rand() 32 + 1的取值區間實際上是[1, 33)。

要產生[0, 32)(開區間)之間偽隨機數:

rand() 32即可;

要產生[0, 32](閉區間)之間偽隨機數:

rand() 33即可。

5樓:好嘞啊啊啊啊

看返回值的型別。

unsigned int

雙位元組是65535,四位元組是4294967295的整數範圍。

rand()函式是乙個有返回值的函式。

rand()%32 是0-31

如果加一的話。

就是1-32

6樓:

0~32767。

產生0-32之間的某個隨機數的**是rand()%33,不是rand()%32+產生1~32之間的隨機數!

7樓:網友

看函式原型: int rand(void),可見其返回的是乙個32位的數,準確的來說是無符號的。

範圍為 0~4g-1。要想取得某一範圍的值用取餘的方式再加乙個基值即可。

8樓:網友

mayadong7349說的是正解,我就是來支援正解的不要採納我。

9樓:

產生0-32之間的隨機數是有這些方法:

rand()%32+0

rand()%32-0+1)+0

rand()%33

10樓:

win下是16位,linux下是32位。

具體說就是0~2^15-1,0~2^31-1。

rand()隨機函式產生的值的範圍?

11樓:惠企百科

cplusplus中有這樣的介紹:

rand函式。

產生乙個0到rand_max的偽隨機數。

這裡的rand_max因不同的實現而異,但rand_max至少為32767。(比如,msvc中通常為0x7fff,即32767,而linux平臺下gcc中rand_max通常會遠遠大於這個值)

有一些其他程式語言。

的rand函式確實是產生乙個[, 之間的浮點數。

比如matlab。

在c中,rand() 32會產生乙個[0, 32)之間的偽隨機數,那麼rand() 32 + 1的取值區間實際上是[1, 33)。

要產生[0, 32)(開區間。

之間偽隨機數:rand() 32即可。

用rand隨機函式怎麼求指定範圍的隨機數

12樓:信必鑫服務平臺

在excel中使用函式rand()*最大值-最小值)+最小值即可得到5-18範圍內的隨機數了,如下世掘御圖操作所示:

1、在任一excel單元格數輸入「=rand()*18-5)+5」;

2、輸入完成後按回車,即可得到5-18間的隨機數。

3、選擇生成的隨機數,進行填充後就可以很多散慶5-18之間的隨機數,如下圖所示:

用rand隨機函式怎麼求指定範圍的隨機數?

13樓:信必鑫服務平臺

在excel中可畝租以使用randbetween函式。

randbetween

返回位於指定的兩個數之間的乙個隨機整數。每次計算工作表時都叢耐做將返回乙個新的隨機整數。

語法。randbetween(bottom,top)

bottom 函式 randbetween 將返回的最小整數。

top 函式 randbetween 將返回的最大整數。

示例 返回一組介於1到100間的隨機數。

引數seed是滲衡srand()的種子,用來初始化srand()的起始值。

但是,要注意的是所謂的「偽隨機數」指的並不是假的隨機數。其實絕對的隨機數只是一種理想狀態的隨機數,計算機只能生成相對的隨機數即偽隨機數。計算機生 成的偽隨機數既是隨機的又是有規律的 ——一部份遵守一定的規律,一部份則不遵守任何規律。

比如「世上沒有兩片形狀完全相同的樹葉」,這體現到了事物的特性 ——差異性;但是每種樹的葉子都有近似的形狀,這正是事物的共性 ——規律性。從這個角度講,我們就可以接受這樣的事實了:計算機只能產生偽隨機數而不是絕對的隨機數。

系統在呼叫rand()之前都會自動呼叫srand(),如果使用者在rand()之前曾呼叫過srand()給引數seed指定了乙個值,那麼 rand()就會將seed的值作為產生偽隨機數的初始值;而如果使用者在rand()前沒有呼叫過srand(),那麼系統預設將1作為偽隨機數的初始 值。如果給了乙個定值,那麼每次rand()產生的隨機數序列都是一樣的~~

所以為了避免上述情況的發生我們通常用srand((unsigned)time(0))或者srand((unsigned)time(null))來 產生種子。如果仍然覺得時間間隔太小,可以在(unsigned)time(0)或者(unsigned)time(null)後面乘上某個合適的整數。

用rand隨機函式怎麼求指定範圍的隨機數

14樓:a羅網天下

在excel中使用函式rand()*最大值-最小值)+最小值即可得到5-18範圍內的隨機數了,如下圖操作所示:

1、在任一excel單元格數輸入「=rand()*18-5)+5」;

2、輸入完成後按回車,即可得到5-18間的隨機數。

3、選擇生成的隨機數,進行填充後就可以很多5-18之間的隨機數,如下圖所示:

15樓:匿名使用者

最具效率的數學方法:rand()%14+5; //rand【5,18】

下面是取意範圍隨機整數的公式:

rand()%max-min+1) +min // 隨機區間[min,max]

隨機區間[5,18]

rand()%18-5+1) +5

rand()%14+5

16樓:匿名使用者

像你說的取5-18範圍,則rand()%13+5即可。

如何用rand產生在某範圍之內的隨機數

17樓:仉冰雙

可以直接使用randbetween函式生成一定範圍內的隨機數。

可以使用rand函結合其他函式來生成一定範圍內的隨機數。

randbetween【語法】

randbetween(bottom,top)bottom引數: randbetween將返回的最小整數。

top引數: randbetween將返回的最大整數。

示例:=randbetween(1,100)大於等於1小於等於100的乙個隨機整數(變數) =randbetween(-1,1)大於等於-1小於等於1的乙個隨機整數(變數)

注意:randbetween函式只會生成隨機整數。如需要隨機小數可結合rand函式來使用。

2003版以上的excel中,直接在單元格輸入=rand()得到大於等於0,小於1的隨機數。

其他生成方法示例:

生成a與b之間的隨機數字(a≤隨機數。

用rand隨機函式怎麼求指定範圍的隨機數

18樓:網友

若要生成 a 與 b之間的隨機整數,請使用: rand()*b-a)+a

round(rand()*b1-a1)+a1,)-a1數字與b1數字間的隨機亂數(整數)

round(rand()*100-95)+95,)-95~100間的隨機亂數。

round(rand()*5+95,)-95~100間的隨機亂數。

round(rand()*1)間的隨機亂數。

round(rand()*1)間的隨機亂數。

隨機整數也可以用randbetween函式。如40~50之間的隨機整數:

randbetween(40,50)

能不能把的excel做桌面,能不能把一個可編輯的excel做桌面

將編輯好的excel文件另存為,選單檔案網頁。右擊桌面,屬性 桌面 自定義桌面 web 新建 瀏覽,將儲存的網頁檔案選中,確定。需要編輯時,右擊網頁檔案,用excel開啟。編輯完後,儲存。然後,右擊桌面,重新整理。右擊桌面,屬性 桌面 自定義桌面 web 新建 瀏覽,將儲存的網頁檔案選中,確定。需要...

村的同姓能不能結婚一個村的同姓能不能結婚

當然可以結婚了,別聽那些老封建的,和他們好好講 律.首先婚姻自由,任何人都不得干涉,包括父母在內不得包辦 買賣婚姻和其他干涉婚姻自由的行為,否則是違反婚姻法,甚至可能構成干涉婚姻自由罪,要坐牢的 其次,同姓不婚 那是西周開始的,現在來講已經不夠科學了,不是說所有的同姓都不能結婚,而是從遺傳學角度講直...

人能不能同時做兩個公司的法人一個人能不能同時做兩個公司的法人

你說的是法定代表人吧。一般情況下是可以的。目前公司法沒有禁止,除非是競爭關係的兩個公司,才需要各自董事會認可。還有一種情況,國有集團內部,上級公司的法定代表人,一般不建議兼任下級公司法定代表人,以避免不必要麻煩。其他情況,可以。一個人是可以做兩個或以上公司的法人的,這個在法律上沒有限制。但是,你這個...